我正在使用React Native Expo构建一个混合应用程序。我的困难是我的应用程序需要一个map,并且需要在移动的和Web上运行。为了使用React Native创建一个map,我找到了几个库,但总是有一个问题:
- react-native-maps:不支持web。(https://github.com/react-native-maps/react-native-maps)
- @teovilla/react-native-web-maps:使用Webpack进行配置,但我使用Metro(以便能够使用Expo Router)
- react-native-leaflet:使用Webview,因此不兼容Web
- MapBox SDK:不能与Expo Go(https://github.com/rnmapbox/maps/blob/main/plugin/install.md)一起使用
我尝试了所有这些库,但我无法实现在Web中渲染我的Map。
我的目标只是使用Metro在Web中使用React Native Expo的Map。也许我错过了一些东西,但我真的不知道如何显示Map。欢迎任何帮助。提前感谢。
1条答案
按热度按时间weylhg0b1#
我发现我们也可以简单地将
@teovilla/react-native-web-maps
与Metro一起使用。为此,我们可以创建mymap.web.js
和mymap.js
组件。React Native将足够聪明,可以为正在构建的平台选择适当的扩展。在第一个组件中,我们可以导入@teovilla/react-native-web-maps
,在第二个组件中,我们可以导入react-native-maps
。个字符
现在,在我们的代码中,我们可以像这样导入我们的组件(适应路径):
型