React-Native Build成功 - Native模块不能为null(iOS)

时间:2016-08-19 21:42:19

标签: ios react-native

我在我当地的El Capitan Mac OS X机器上运行本机应用程序。我试图让它在iOS模拟器中运行。

构建成功但我看到一个红色屏幕,上面写着:Native模块不能为空。

我在控制台中看到此错误:

NotFoundError: Cannot find entry file global code@http://localhost:8081/index.ios.js in any of the roots: ["/Users/User/f8app"]
    at DependencyGraph._getAbsolutePath (/Users/User/f8app/node_modules/node-haste/lib/index.js:288:13)
    at /Users/User/f8app/node_modules/node-haste/lib/index.js:226:30
    at process._tickCallback (node.js:401:9)

我该如何解决这个问题?谢谢。

React-native版本: react-native-cli:1.0.0 反应原生:0.28.0

编辑:这令人难以置信,因为index.ios.js位于我项目的根目录中。

2 个答案:

答案 0 :(得分:0)

我有类似的问题,需要一段时间来缩小原因问题。 React有时不会自动将子库链接到iOS项目。您的库可能需要一些额外的RCT*依赖项,这些依赖项已下载并位于node_modules / react-native文件夹中。您需要手动链接它。

例如,我使用CocoaPods进行iOS依赖关系管理,我的本机反应如下:

pod 'React', :path => '../../node_modules/react-native', :subspecs => [
   'Core',
    'RCTText',
    'RCTImage',
    'RCTLinkingIOS',
    'RCTSettings',
    'RCTVibration',
    'RCTGeolocation',
    'RCTActionSheet',
    'RCTNetwork',
    'RCTWebSocket'
  ]

如果您使用react-native link或在XCode中手动关联,请务必将这些文件添加到Xcode项目中。 Facebook documentation

中的更多详细信息

答案 1 :(得分:0)

  1. 删除ios文件夹中的节点模块,podfile.lock和pods文件夹。
  2. 在项目目录中运行yarn install。
  3. 在ios文件夹中运行pod install。