2017-03-22 80 views
5

当试图做react-native run-ios(请参见下面的截图)时出现以下错误。我检查了this answer以及github thread,但都没有帮助。react-native没有绑定URL存在

有什么想法或如何使其工作?这个问题似乎与iOS隔离,因为Android模拟器工作正常。看起来也许这是Facebook代码的某种错误。

enter image description here

+1

可能重复[在react-native中没有任何bundle URL的含义?](http://stackoverflow.com/questions/42610070/what-means-of-no-bundle-url-present-in-react -native) – Moussawi7

+0

@ Moussawi7 - 是的,我在我的问题中提到我已经检查过了,这没有帮助。 – dcp

+0

尝试使用 'jsCodeLocation = [NSURL URLWithString:@“http:// localhost:8081/index.ios.bundle”]; ' 在您的Appdelegate.m而不是您当前的** jsCodeLocation **值 使用您的IP和端口 – Hariks

回答

3

我用以下解决方案解决它:

编辑<your_project_folder>/ios/<project_name>/AppDelegate.m并更改jsCodeLocation变量,如下所示:

jsCodeLocation = 
    [NSURL URLWithString:@"http://127.0.0.1:8081/index.ios.bundle?platform=ios&dev=true"]; 
+0

我已经试过了十几个建议,这是为我修复的建议,谢谢!请注意:请记住保留原来的评论,您可能需要该版本用于生产版本。 – jesusiniesta

0

试试这个模拟器已经运行后:

NPM安装

反应本地运行IOS

+0

没有什么区别,仍然有关于捆绑的相同错误。 – dcp

+2

这对于我使用[入门](https://facebook.github.io/react-native/docs/getting-started.html)指令构建的反应原生应用程序适用于我。然后,如果我使用'react-native run-ios'运行我的应用程序,请等待包装程序窗口加载其依赖关系图,然后返回到运行'run-ios'命令的终端窗口,执行'npm安装',然后重新运行'run-ios',我可以运行我的应用程序。但每次我停下来开始打包器/ run-ios时,我都必须这样做。 – mheavers

+0

@mheavers - 我只是用最新的反应本机版本再次尝试,它仍然无法正常工作。 – dcp

2

当我在不同的计算机上使用同一个react-native项目时,会发生这种情况。关闭模拟器并删除ios > build文件夹,然后运行react-native run-ios再次为我解决它。

+0

这个答案为我解决了一个问题。作为作者提到,我的情况是,我使用两台电脑相同的项目 –

2

对于那些仍然有兴趣我开发时解决了这个刚刚通过运行

react-native start 

这将启动打包在当前终端窗口,在其他终端窗口

react-native run-ios 
1

我也有这个错误运行。尝试这种解决方案在模拟器:

  1. 按住SHIFT + CMD + H两次调出正在运行的应用

  2. 然后向上滑动您的应用程序,你想摆脱。

  3. 点击您的应用程序。

这对我来说,通过无数的解决方案,这是我真正需要做的!希望这可以帮助。

0

对我来说,我没有安装看守。要检查是否已安装,请从终端上运行brew list。如果您没有看到守卫列表,只需运行brew install watchman即可。

注:如果你在安装过程中出现此错误:

Error: Xcode alone is not sufficient on Sierra. 
Install the Command Line Tools: 
    xcode-select --install 

你需要安装Xcode的命令行工具。所以,从您的终端运行xcode-select --install。工具安装完成后,您需要重新运行brew install watchman。那么你应该可以通过运行react-native run-ios来启动你的项目。