我找不到有关如何安装和运行“
https://github.com/facebook/react-native/tree/master/Examples”中提供的其他示例之一的任何说明,例如“
https://github.com/facebook/react-native/tree/master/Examples/Movies”.
本教程仅告诉您要做
react-native init AwesomeProject
这抓住了’https://github.com/facebook/react-native/tree/master/Examples/SampleApp‘.
如果我克隆整个“反应本机”存储库,然后运行
npm install npm start
从根文件夹(即’/ react-native)’,然后在Xcode中打开’/react-native/Examples/Movies/Movies.xcodeproj’,并运行该项目,似乎构建正常.模拟器出现,显示了一个“电影”介绍屏幕的应用程序,但后来的红色屏幕的死亡出现与打印出来的:
:0
和终端,其中’npm start’在根文件夹下运行,打印出来:
Error: EISDIR,read at Error (native) [02:35:02] <START> request:/Examples/Movies/MoviesApp.includeRequire.runModule.bundle
解决方法
它应该只是按照
Getting Started Tutorial,除了你必须在你的反应本机目录下运行npm安装.
然后运行例如与Xcode的电影项目.
如果要“隔离”MovieProject或另一个反应性的示例项目,简单的方法是初始化一个新的反应本机应用程序(react-native init MyAppName),并从示例项目中复制JS文件(在下面的示例中电影项目)进入新的应用程序文件夹.
然后不要忘记编辑你的iOS / AppDelegate.m文件.
你必须编辑2行:
jsCodeLocation = [NSURL URLWithString:@"http:/localhost:8081/index.ios.bundle"];
通过:
jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/MoviesApp.bundle"];
和
RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"MyAppName" launchOptions:launchOptions];
通过:
RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"MoviesApp" launchOptions:launchOptions];