我在react-native
有一个项目。当我在mac终端上运行react-native run-ios
时,我收到此错误:
Cannot find entry file index.js in any of the roots: [path to root]
我不知道这意味着什么。请有人为我澄清这一点。
我可以在根文件夹中看到index.ios.js
和index.android.js
,我有一个名为app
的文件夹,其中有index.js
,我是否必须添加index.js
在项目根文件夹中?
我正在继续:
react-native-cli: 2.0.1
react-native: 0.49.3
node 6.9.1
npm 3.10.8
答案 0 :(得分:2)
似乎这不是你的项目,或者你没有用正确的工具创建它。
如果这只是您的项目并且从未起作用,请确保使用带有react-native的'init'命令创建它。通常项目没有另一个index.js。
另一个问题可能是你的index.ios.js指向一个不存在的index.js
答案 1 :(得分:0)
对于我的同事来说,这个问题并不一致,他们都按照我的指示设置了RN dev env,但不适合我。对他们来说会发生什么是他们的初始构建会起作用,特别是如果从头开始构建iOS或Android本机文件但后续构建会导致来自捆绑器的可怕错误:
error: bundling failed: NotFoundError: Cannot find entry file artifacts/index.js in any of the roots
今天我们注意到了那个守望者'没有为他们返回任何东西,但为我返回了一个守望者的实例。当我在一年前设置我的dev env时,我安装了守望者,但没有在我的说明中包含它来设置他们的开发环境。
安装守望者(并确保它在路径中)为我的同事们解决了这个问题。在Mac上,您可以通过&#brew Brewman安装'如果使用HomeBrew。安装守望者还有其他选择:https://facebook.github.io/watchman/
从我对GitHub问题的回复中复制:https://github.com/facebook/react-native/issues/14246#issuecomment-377302492
答案 2 :(得分:-1)
当你使用react-native-cli时,你没有index.js。但是当您使用create-react-native-app
时会生成index.js