在Ubuntu(Linux发行版都行,不一定是Ubuntu)开发React-Native中在真机就调试或者式虚拟机调试都可能会遇到写了代码,而真机或者虚拟机都没有实时的刷新代码所实现的内容(包括功能)比如下面的图
无论怎么刷新我们都会发现都是没有效果的,下面我的个人解决方案,仅供参考。
1).我们到所建的项目的根目录去打开终端,如下图
2).然后往里面写一段代码
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
注意:运行这段代码的时候你可能会遇到一个问题,说是没有找到文件或文件集
ENOENT: no such file or directory, open 'android/app/src/main/assets/index.android.bundle'
如下图
3).我们根据错误的提示路径,我们进入路径里面,路径如下
android/app/src/main/assets/index.android.bundle
发现main的文件夹里面没有assets文件夹,那么我们就新建一个文件夹,并命名为assets,然后在assets的文件夹里面新建一个空白文档命名为index.Android.bundle然后保存即可。
4).我们次在项目的根目录下新建一个终端,再次运行如下命令
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
5).如果运行项目还是无法刷新的话,你继续往下看
首先,进入项目如下的路径
其次打开index.js的文件把修改一下
//const MAX_WAIT_TIME = 120000;
const MAX_WAIT_TIME = 360000;
然后保存即可。
最后,我们再次在项目的根目录下新建一个终端,运行一下如下命令,问题就彻底解决了
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
运行之前是这样的
运行之后又是这样的
然后在去运行项目看看,代码实现刷新了。