Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native 不变冲突:requirenActiveComponent:“;“航空地图”;在UIManager中找不到。没办法?_React Native - Fatal编程技术网

React native 不变冲突:requirenActiveComponent:“;“航空地图”;在UIManager中找不到。没办法?

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

我遵循了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 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

问题似乎是依赖项未链接到您的项目,因此此问题有两种解决方案(取决于您的“依赖项”)

  • 在项目路径的终端/cmd中运行
    react native link
  • 在MainApplication.java中手动附加依赖项,如下所示:
  • 在MainApplication.java中手动附加依赖项,如下所示:

    @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
    ),然后我按照更新答案的图像进行操作?仍然了解问题…在两个教程之后仍然了解问题