react-native无法将最新版本的ios代码推送到模拟器

时间:2017-11-10 20:10:13

标签: ios react-native

我正在构建一个本机应用程序,它应该可以在Android模拟器和iOS模拟器中运行。我一直在开发我的Windows机器,我会使用命令提示符react-native run-android在Android模拟器中查看我的更改。偶尔,我会转到我的mac mini,执行git pull origin master,然后运行react-native run-ios以查看我在iOS模拟器中的更改。

几天前,一切都运转良好。现在,当我在Mac mini上时,会发生以下情况:

  • 如果我从终端运行react-native run-android,我会在Android模拟器中看到我最新的反应本机更改,这是完美的
  • 如果我从终端运行react-native run-ios,我会看到ios模拟器的反应原生更改的EARLIER / OLDER版本。这不是我想要的。我希望我的ios模拟器以开发人员期望的方式显示我的最新更改。我尝试键入垃圾,语法错误,删除我的react-native项目中的文件,以查看编译器是否会尊重这些错误并失败,但事实并非如此。 react-native run-ios命令忽略了我明显破坏的项目,并继续构建我的react-native项目的相同早期版本并将其放入ios模拟器中。我尝试删除项目,并做了一个全新的git pull,但仍然出现同样的问题,模拟器显示了我项目的早期版本。

为什么我的react-native run-ios命令不会构建最新版本的react-native代码并将其放入ios模拟器中?

1 个答案:

答案 0 :(得分:0)

好的,我找到了解决方法。

我使用react-native init <sameprojectnameasmybrokenproject>启动了一个全新的反应原生项目。然后我复制了所有我的反应组件和项目文件(我创建的那些,而不是反应创建锅炉模板的东西)和我的package.json文件从我破碎的项目到我的新项目。然后我运行react-native run-ios以确保这个新项目正常运行。

修改

我还将我的新项目中的这四个文件复制到我的破坏项目中,并且它已经破坏了项目以再次显示最新的构建版本。

  • IOS / nutriag.xcodeproj / project.pbxproj
  • IOS / nutriag.xcodeproj / xcshareddata / xcschema / nutriag.xcscheme
  • IOS / nutriag / AppDelegate.m
  • IOS / nutriag / Info.plist中

关于这四个文件的内容在我破碎的项目中被打破了。