最近很多小伙伴都在问如何运行React-Native示例?和运行reactnative项目这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展ios–如何运行React-Native示
最近很多小伙伴都在问如何运行React-Native示例?和运行react native项目这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展ios – 如何运行React-Native示例?、Mac下WebStorm直接运行ReactNative项目、React Native Android-第一次运行react-native run-android时出错、React Native 安卓 程序运行报错: React Native version mismatch(转载)等相关知识,下面开始了哦!
本文目录一览:- 如何运行React-Native示例?(运行react native项目)
- ios – 如何运行React-Native示例?
- Mac下WebStorm直接运行ReactNative项目
- React Native Android-第一次运行react-native run-android时出错
- React Native 安卓 程序运行报错: React Native version mismatch(转载)
如何运行React-Native示例?(运行react native项目)
我找不到有关如何安装和运行“ https://github.com/facebook/react-
native/tree/master/Examples ”中提供的其他示例之一的说明,例如“
https://github.com ” 。 com / facebook / react-native / tree /
master / Examples / Movies。
本教程仅告诉您要做
react-native init AwesomeProject
抓取’ https://github.com/facebook/react-
native/tree/master/Examples/SampleApp ‘。
如果我克隆整个“ react-native”存储库,然后运行
npm installnpm 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
答案1
小编典典它只需要按照“ 入门指南”进行即可,除了必须npm install
在react-native目录中运行。
然后,例如运行带有Xcode的Movie Project。
如果您想“隔离” MovieProject或其他React-Native示例项目,最简单的方法是初始化一个新的React Native应用(react-native init MyAppName
),然后将示例项目(在Movie Project下面的示例中)的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];
ios – 如何运行React-Native示例?
本教程仅告诉您要做
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
解决方法
然后运行例如与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];
Mac下WebStorm直接运行ReactNative项目
1.首先点击WebStorm右上方的下拉箭头弹出的Edit Configurations….
2.然后会进入一个配置页面.点击左上方的+.在弹出的列表中选中npm.
3.在右边的配置框中,先选择Command为help.接着点击下方的+号.再点击Run External tool
4.在弹出框中选择+号.
5.在弹出的配置框中,填写相应信息.
Program为react Native的路径,终端命令:which react-native 一般都是 /usr/local/bin/react-native
Parameters填 run-ios
working directory该输入框中,先点击右边的insert macro,选择ProjectFileDir.
5.点击OK.接下来点击Apply回到主界面.可以看见右上方的按钮.点击即可运行项目了.
React Native Android-第一次运行react-native run-android时出错
Gradle 6.2不支持JDK14。您必须将Gradle版本升级到6.3或更高版本。
React Native 安卓 程序运行报错: React Native version mismatch(转载)
这个问题已经得到解决,参照stackoverflow上的问题:https://stackoverflow.com/que...
这个问题的原因就处在Android工程中app/build.gradle
中,build.gradle
中对于 react-native库的版本的配置默认是这么写的:
compile ''com.facebook.react:react-native:+''
这个最后面的 “+” 表示的是使用最新的版本号。
也就是说,我们Android工程中,依赖的React native 的native代码版本号是使用网络上发布的最新版本。
这也是我们这个问题产生的根本原因。
按照上面链接中的问题的回答,进行如下修改:
compile (''com.facebook.react:react-native:0.54.3'') { force = true }
再执行 react-native run-android
,一切恢复正常。真是个大坑,耽误了自己一上午的时间。
补充:
报这个错误还有一种情况,那就是我们先用react-native run-android
运行了其他的不同RN版本的工程,这个时候,如果我们不关闭其他运行中的RN工程的调试进程就在我们想要启动的工程下面运行react-native run-android
命令的话,也会在安装的 app中报这个错误,也就是对应 stack overflow 链接中的票数最多的回答。
总结一下:
产生这个错误可能有两种情况:
第一种情况,也是比较常见的情况是:有其他不同RN版本号的工程以开发模式运行,这时如果我们以 react-native run-android
运行我们自己想要调试的工程的话,会报这个错误。
第二种情况,可能相比第一种情况不常见,原因在于可能在我们的开发周期内,RN的Native版本库不一定会更新。第二种情况就是,我们在Android工程中配置的RN库版本与 JS工程中配置的RN库版本不一致。这种情况下只需将 android/app/build.gradle
下的RN库默认配置改为:
compile (''com.facebook.react:react-native:0.54.3'') { force = true } // 0.54.3 处变为自己的JS工程中的相应版本号
问题即可解决。
关于如何运行React-Native示例?和运行react native项目的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于ios – 如何运行React-Native示例?、Mac下WebStorm直接运行ReactNative项目、React Native Android-第一次运行react-native run-android时出错、React Native 安卓 程序运行报错: React Native version mismatch(转载)的相关知识,请在本站寻找。
本文标签: