首页 > 解决方案 > @react-native-community/react-native-device-info:NativeModule.RNDeviceInfo 为空

问题描述

我最近进行了一个react-native initand when I ranreact-native run-ios` 我得到了这个错误:

在此处输入图像描述

现在你的第一反应是说我必须安装它并且没有链接它......不是这样,这是我的package.json文件:

{
  "name": "NFIBEngage",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "react-native start",
    "test": "jest",
    "lint": "eslint ."
  },
  "dependencies": {
    "react": "16.8.6",
    "react-native": "0.60.4"
  },
  "devDependencies": {
    "@babel/core": "7.5.5",
    "@babel/runtime": "7.5.5",
    "@react-native-community/eslint-config": "0.0.5",
    "babel-jest": "24.8.0",
    "eslint": "6.1.0",
    "jest": "24.8.0",
    "metro-react-native-babel-preset": "0.55.0",
    "react-test-renderer": "16.8.6"
  },
  "jest": {
    "preset": "react-native"
  }
}

样板

所以我想好吧,所以让我尝试一下react-native link react-native-device-info,果然我收到了这个错误信息:

error Unknown dependency. Make sure that the package you are trying to link is already installed in your "node_modules" and present in your "package.json" dependencies. Run CLI with --verbose flag for more details.

这是有道理的,因为我从来没有安装过它,所以为什么它会出现在我的节点模块中。

任何人都知道@react-native-community我在样板应用程序中遇到此错误的世界发生了什么?

标签: reactjsreact-native

解决方案


在处理多个 React Native 项目时,请确保在切换到另一个项目之前关闭 Metro Bundler。

来自另一个项目的捆绑程序仍在运行,新项目的本机应用程序正在从那里加载捆绑包。通常你会看到一个错误,指出端口 8081 已被使用,但我一定完全错过了这个错误。


推荐阅读