2017-11-10 31 views
1

我正在构建一个应该可以在Android模拟器和iOS模拟器中工作的反应原生应用程序。我一直在我的Windows机器上进行开发,我会使用命令提示符react-native run-android在Android模拟器中查看我的更改。有一段时间,我会去我的Mac mini,做一个git pull origin master,然后运行react-native run-ios来查看我在iOS模拟器中的更改。react-native无法将最新版本的ios代码推送到模拟器

一切都一直工作得很好,直到前几天。现在,当我在我的Mac mini,会发生以下情况:

  • 如果我从终端运行react-native run-android,我看到在Android模拟器,这是完美
  • 如果我的最新反应母语的变化我从我的终端运行react-native run-ios,我看到了ios模拟器反应原生变化的早/旧版本。这不是我想要的。我希望我的ios模拟器按照开发人员的期望展示我的最新变化。我尝试在我的react-native项目中输入垃圾,语法错误,删除文件以查看编译器是否会尊重这些错误并失败,但事实并非如此。 react-native run-ios命令忽略了我明显打破的项目,并继续构建我的react-native项目的早期版本,并将其放入ios模拟器中。我尝试删除该项目,并做一个新的新的Git拉,但仍然发生相同的问题,模拟器显示我的项目相同的早期版本。

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

回答

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 /信息。 plist

因此,有关这四个文件的信息在我破碎的项目中被破坏了。