React Native环境搭建--总结遇见的所有问题!!

参考博客:

超详细React Native环境搭建以及运行项目(Windows环境)_react-native 0.59环境-CSDN博客

'react-native' 不是内部或外部命令,也不是可运行的程序 或批处理文件。_react-native' 不是内部或外部命令,也不是可运行的程序-CSDN博客

npm安装依赖超时,报错npm error code ECONNRESET_npm error code econnreset npm error syscall read n-CSDN博客

React Native 绑定夜神模拟器进行调试_react-native绑定模拟器-CSDN博客                    --》需要做的:为了保持安装的 Android sdk 版本与 夜神模拟器的 sdk 版本一致!

vscode 连接夜神模拟器 运行 react native项目 (很简单的方法)_vscode连接夜神模拟器-CSDN博客      --》使用adb服务,启动并连接夜神服务

---------------------------------------------------------------------------------------------

①安装node
②在node_modules同级下新建node_cahe、node_global
③执行npm config set prefix (进node_global上面显示的路径)、npm config set cache (进node_cache上面显示的路径)
【最好用管理员模式、否则设置了不起作用,安装包的时候报目录设置错误】
④设置环境变量:
系统变量:新建NODE_PATH(进node_global下的node_modules上面显示的路径)、并在path中添加路径(进nodejs的)、、
用户变量:将变量【path】中的C:\Users\用户名\AppData\Roaming\npm改为node_global上面显示的路径)
⑤测试:运行node -v、npm -v 安装npm install express -g可在全局模块包目录看到
卸载重新安装新版本node步骤:①控制面板卸载   ②删除安装目录文件夹、安装下载的数据包

开启模拟器,进行连接(根据你目录路径,运行命令)
F:\AndroidSDK\platform-tools>adb.exe connect 127.0.0.1:62001

D:\Program Files\Nox\bin>nox_adb.exe connect 127.0.0.1:62001

D:\Program Files\Nox\bin>adb devices
List of devices attached
127.0.0.1:62001 device

能看到就是连接好了,使用react-native run-andriod,启动项目(首次使用,会打包下载安装到模拟器)

后续使用:npm start 启动项目

---------------------------------------------------------------------------------------------------------

运行react-native项目需要安装一个识别命令的工具包npm install -g react-native-cli

遇到的问题及解决方法:

vscode控制台报错

1. vscode报错:react-native : 无法将“react-native”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

--安装npm install -g react-native-cli

 

2. 安装cli包时失败:network request to https://registry.npmjs.org/react-native-cli failed, reason: read ECONNRESET

--如果没有代理,更换镜npm config set registry https://registry.npmmirror.com/

 

3.vscode报错:SyntaxError: Unexpected token ;

说明版本不兼容,读取不了某些语句--解决:升级node版本

 

4.vscode报错:无法加载文件;

更改执行策略  打开powershell以管理员身份运行--Get-ExecutionPolicy、Set-ExecutionPolicy RemoteSigned -Scope CurrentUser--重新运行命令

 

5.vscode报错:C:\Users\  XXX,gradle构件错误--项目路径包含非 ASCII 字符

更改项目存放位置,要求放在非中文路径下

 

6.vscode报错:adb server version (36) doesn't match this client (41); killing...adb服务端版本(36)和客户端版本(41)不匹配,这可能导致通信问题。之后adb.exe: device '127.0.0.1:62001' not found反复出现

sdk目录下的adb.exe复制并重复名为nox_adb.exe,放到nox的bin目录下替换掉原来的

 

安装依赖时出错:

① 451 Unavailable For Legal Reasons - GET https://registry.npmmirror.com/

更换镜像:npm config set registry https://registry.npmjs.org/

②not permitt

更改cache目录下文件完全控制权

 

夜神模拟器报错:

1.500-Metro has encountered an error: Cannot read properties of undefined (reading 'transformFile')

检查metro和babel相关的依赖项是否安装正确且版本兼容:

npm list metro
npm list babel

(因为 Metro 通常与 Babel 一起使用进行代码转换)--缺少则npm install metro - core metro - runtime、npm install @babel/core @babel/preset - env @babel/preset - react--》

 

500metro版本不兼容问题,不用装它了,直接重装能识别它的node版本,我这同事运行的是node16.17版本

【下载node16.17版本的地址】:https://nodejs.org/dist/v16.17.0/

 

总结:node版本要对,提前确定一下同事能运行项目的版本号。

posted @ 2024-11-29 18:14  Anne起飞记  阅读(59)  评论(0编辑  收藏  举报