React native 不变冲突:requirenActiveComponent:“;“航空地图”;在UIManager中找不到。没办法?
我遵循了react native maps文档中的指南:我发现了错误 我在stackoverflow和google上到处寻找,但找不到修复方法 我尝试了在论坛上找到的所有答案,但仍然得到了错误 错误:React native 不变冲突:requirenActiveComponent:“;“航空地图”;在UIManager中找不到。没办法?,react-native,React Native,我遵循了react native maps文档中的指南:我发现了错误 我在stackoverflow和google上到处寻找,但找不到修复方法 我尝试了在论坛上找到的所有答案,但仍然得到了错误 错误: import React from 'react'; import MapView from 'react-native-maps'; import { StyleSheet } from 'react-native'; export default class App extends Reac
import React from 'react';
import MapView from 'react-native-maps';
import { StyleSheet } from 'react-native';
export default class App extends React.Component {
constructor() {
super();
this.state = {};
}
render() {
return (
<MapView
style = {styles.map}
showsUserLocation = {false}
followUserLocation = {false}
zoomEnabled = {true}
/>
)
}
}
const styles = StyleSheet.create ({
map: {
height: 400,
marginTop: 80
}
})
不变冲突:在UIManager中找不到RequiredActiveComponent:“AIRMap”
我的代码:
import React from 'react';
import MapView from 'react-native-maps';
import { StyleSheet } from 'react-native';
export default class App extends React.Component {
constructor() {
super();
this.state = {};
}
render() {
return (
<MapView
style = {styles.map}
showsUserLocation = {false}
followUserLocation = {false}
zoomEnabled = {true}
/>
)
}
}
const styles = StyleSheet.create ({
map: {
height: 400,
marginTop: 80
}
})
从“React”导入React;
从“react native maps”导入MapView;
从“react native”导入{StyleSheet};
导出默认类App扩展React.Component{
构造函数(){
超级();
this.state={};
}
render(){
返回(
)
}
}
const styles=StyleSheet.create({
地图:{
身高:400,
玛金托普:80
}
})
试试这个:
打开xcode项目>您的项目>构建阶段>链接二进制文件>删除libAirMaps.a>
然后再添加一次>检查是否有效。。。
编辑:
如果已安装react native maps,请尝试手动添加AirMapsLib。按照此图像上的说明进行操作。之后,请重试上述说明。
请查看这两个链接,它们为您提供了有关iOS和Android中react本机地图集成的详细信息
有时iOS库链接不正确,所以您需要手动将库添加到Xcode中。我在iOS中还没有遇到这个问题,但在Android上。
在UIManager中找不到不变冲突:requirenActiveComponent:xxx
问题似乎是依赖项未链接到您的项目,因此此问题有两种解决方案(取决于您的“依赖项”)
react native link
李>
@Override
protected List<ReactPackage> getPackages() {
@SuppressWarnings("UnnecessaryLocalVariable")
List<ReactPackage> packages = new PackageList(this).getPackages();
// Packages that cannot be autolinked yet can be added manually here, for
packages.add(new RNFirebaseAnalyticsPackage());
packages.add(new xxxPackage());
}
@覆盖
受保护的列表getPackages(){
@抑制警告(“不必要的局部变量”)
List packages=new PackageList(this).getPackages();
//无法自动链接但可以在此处手动添加的包,例如
packages.add(新的RNFirebaseAnalyticsPackage());
packages.add(新的xxxPackage());
}
可能有我只通过运行react native run android解决了这个问题。
注意:如果您已经运行了react native link,请首先取消链接。将以下行添加到MainApplication.java
import com.airbnb.android.react.maps.MapsPackage;
@Override
protected List<ReactPackage> getPackages() {
@SuppressWarnings("UnnecessaryLocalVariable")
List<ReactPackage> packages = new PackageList(this).getPackages();
packages.add(new MapsPackage());
return packages;
导入com.airbnb.android.react.maps.MapsPackage;
@凌驾
受保护的列表getPackages(){
@抑制警告(“不必要的局部变量”)
List packages=new PackageList(this).getPackages();
packages.add(新的MapsPackage());
退货包裹;
你想在iOS、Android或两者上运行吗?目前我只在iOS上运行抱歉。你是如何链接“react native maps”的?如果你使用npm的react native link react native maps
,请确保安装它时带有--save
标记。我使用了react native link react native maps
。但是我使用了yarn、 所以我不需要添加<代码>--保存<代码>,对吗?这就是它应该如何工作的,但是文档只在运行安装后脚本的上下文中提到了纱线。不幸的是,我找不到libAirMaps。a它不在列表中,当我尝试添加它时,xcode没有找到它感谢您的答案!所以我必须按照最好的方式来做按照官方文档的说明(使用react native link react native maps
),然后我按照更新答案的图像进行操作?仍然了解问题…在两个教程之后仍然了解问题