资讯专栏INFORMATION COLUMN

#react-native BUG#

william / 945人阅读

摘要:重启再次点击应该就不会报错了替换成下面的这个,即在加一个运行下面的命令清除缓存然后在尝试直接根据端口找进程可以得到一个杀死进程在写项目的时候剩余运算符解析报错。

这篇文章主要解决react-native中遇到的bug。
环境:window10

Error: Command failed: gradlew.bat installDebug

编译并运行 React Native 应用之前我们可以使用下面的方法清理gradlew 和之前的构建文件。

Error: Command failed: gradlew.bat installDebug
Failed to capture snapshot of output files for task":app:transformClassesWithDexBuilderForDebug" 
property "streamOutputFolder" during up-to-date check.
Could not read path
"projectandroidappuildintermediates	ransformsdexBuilderdebug49androidarchlifecycle".

解决方案:

在项目下运行这面的命令
在项目目录下输入下面的命令:react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

依次执行下面的命令

cd project/android   //进入当前项目的android文件夹下
gradlew clean
cd ..   //进入当前项目目录
react-native run-android  //编译并运行 React Native 应用
The module ../lib/props could not be found from `projectnode_modulesreact-native-svgelementsRect.js

这个是缓存问题

bundling failed: Error: Unable to resolve module `../lib/props` from `project
ode_modules
eact-native-svgelementsRect.js`: The module `../lib/props` could not be found from `project
ode_modules
eact-native-svgelementsRect.js`.

解决方案

删除项目中的node_modules文件夹

重新下载依赖
执行下面的命令npm install

清空缓存
执行下面的命令npm start -- --reset-cache

emulator: ERROR: x86 emulation currently requires hardware acceleration!

场景描述:在react-native 开发的时候,点击AVDManager按钮,出现的报错信息。
解决方法(参考)

在Android Studio中打开SDK Manager并且下载Intel x86 Emulator Accelerator (HAXM installer)。

进入SDK目录
目录结构大致这样: C:users%USERNAME%AppDataLocalAndroidsdkextrasintelHardware_Accelerated_Execution_Manager
执行安装这个文件: intelhaxm-android.exe。
执行的过程中可能会报错这样的信息:‘Intel virtualization technology (vt,vt-x) is not enabled’。
这个问题的解决方法是(参考):

- Please reboot your system and enter the BIOS setup // win10 开机的时候一直按着esc键。    
- Look for an option labeled "VT", "Intel VT", or "Virtualization"; verify it is enabled. 
- If VT/Intel VT/Virtualization is disabled, enable the option.   
- Save the BIOS settings.    
- Restart the machine.
- 执行安装这个文件: intelhaxm-android.exe,安装成功。 

重启Android Studio再次点击 AVDManager应该就不会报错了.

undefined is not an object (evaluating "RNGestureHandlerModule.State")
yarn add react-native-gesture-handler
react-native link react-native-gesture-handler
settings file "projectandroidsettings.gradle": 3: unexpected char: "" @ line 3, column 133
new File(rootProject.projectDir, "..
ode_modules
eact-native-gesture-handlerandroid")
//替换成下面的这个,即在加一个‘’
new File(rootProject.projectDir, "..
ode_modules
eact-native-gesture-handlerandroid")
Unable to resolve module ./index from react-nativescripts/.

运行下面的命令清除缓存

react-native start -- --cache-reset 

然后在尝试

react-native run-android
Error: listen EADDRINUSE :::8081
//直接根据端口找进程,可以得到一个PID
netstat -ano | findStr "8080"
//Find the process name by pid
tasklist /fi "pid eq 2216"
//杀死进程
taskkill /PID 19856
SyntaxError: /Checkbox/checkbox.js: Unexpected token (14:32)


在写react项目的时候剩余运算符解析报错。
解决方案:
解构对象需要用到 stage-3 的 preset。

//安装stage-3
npm install --save-dev @babel/preset-stage-3
//配置
{
  "presets": ["stage-3"]
}

到这里重新运行项目可能会遇到这样的bug信息:
Error: Couldn"t find preset "stage-3" relative to directory
这时我们可以尝试安装

npm install --save-dev babel-preset-stage-2

在运行项目应该就可以了!

INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES

解决的方法除了只有先老老实实从手机上卸载原有版本再进行安装,而adb install -r参数也无法解决这个问题

Unable to connect with remote debugger

问题描述:
执行 react-native run-android后,报错:

解决方法:
把手机上之前安装的应用程序删除,执行

$ adb forward --remove-all
$ adb forward tcp:8082 tcp:8082
react-native run-android










文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/102221.html

相关文章

  • React Native 模仿网易云音乐手机客户端,兼容安卓和IOS两个平台

    摘要:比如安卓平台在中不能触屏手动滚动。主要的功能界面模块大部分主要是展示的,网易云的页面和功能实在是太多了,由于时间关系,并没有把所有的功能都做完整,后续会陆续加上其他的功能。各部分模块首页展示音乐播放,包括动画,歌词同步等。 React Native 模仿网易云音乐手机客户端,兼容安卓和IOS两个平台。 GitHub 完整源码地址https://github.com/yezihaohao...

    妤锋シ 评论0 收藏0
  • React-Native实际开发过程中的一些注意点

    摘要:语法不兼容语法,会产生一些不可预知的。经过商量,服务器对接收到的数据进行去重,且后续时间以服务器时间为准。的数据存储速度有待怀疑。 1、ES6语法不兼容for of语法,会产生一些不可预知的bug。 2、从服务器获取到的配置文件XXX.bytes,直接根据pb文件解析即可,千万不要进行json解析,否则pb里的枚举值就会被转成字符串,导致获取不到预想的结果。 3、做本地缓存的时候,r...

    cnTomato 评论0 收藏0
  • 翻译 | 从 ReactJS 到 React-Native—两者的主要差异是什么?

    摘要:跟非常相似,但是在开始尝试你第一个之前,也需要了解两者之间的一些差异。推荐的方式是使用提供的。能用到组件中的或者上以启用这个组件的触摸事件。 华翔,Web前端开发工程师著作权归作者所有,转载请联系作者获得授权。 showImg(https://segmentfault.com/img/bVUliz?w=640&h=235); React-Native已经诞生有两年左右了,自从适配了An...

    darkerXi 评论0 收藏0
  • 来聊聊react-native应用的健康监控

    监控什么 今天我们来聊聊如何监控你的应用程序,这里的监控说的不是让我们去监控用户,而是监控应用的健康状态,什么是健康状态呢?对于后端的同学来说,在微服务的架构下,每个子服务是否正常工作、返回的结果是否满足预期,这些就算是健康状态,再举个例子,你的台式机,对于操作系统来说,每个硬件是否能正常的工作、工作的稳定性,这些都是需要关注的健康状态。 既然我们关心健康状态,那么我们该如何衡量一个设备的健康状态...

    tunny 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<