React版本不兼容问题解决指南:从错误分析到完整解决方案
创作时间:
作者:
@小白创作中心
React版本不兼容问题解决指南:从错误分析到完整解决方案
引用
CSDN
1.
https://blog.csdn.net/TullyL/article/details/144300756
在React项目开发中,版本不兼容问题是一个常见的困扰。本文将详细介绍如何解决React版本不兼容导致的项目创建失败问题,包括具体的错误信息分析、解决方案步骤以及相关依赖的处理方法。
报错原因
React版本不兼容是导致项目创建失败的主要原因。在创建React应用时,如果不同组件或库之间的React版本不匹配,就会引发依赖解析错误。
详细报错
在尝试创建React项目时,开发者遇到了以下错误信息:
Microsoft Windows [版本 10.0.22000.2538Microsoft Windows [版本 10.0.22000.2538]
(c) Microsoft Corporation。保留所有权利。
E:\React\react-weather-app>mk weather-app
'mk' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
E:\React\react-weather-app>create-react-app weather-app
Creating a new React app in E:\React\react-weather-app\weather-app.
Installing packages. This might take a couple of minutes.
Installing react, react-dom, and react-scripts with cra-template...
added 1314 packages in 1m
261 packages are looking for funding
run `npm fund` for details
Initialized a git repository.
Installing template dependencies using npm...
npm error code ERESOLVE
npm error ERESOLVE unable to resolve dependency tree
npm error
npm error While resolving: weather-app@0.1.0
npm error Found: react@19.0.0
npm error node_modules/react
npm error react@"^19.0.0" from the root project
otentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error C:\Users\admin\AppData\Local\npm-cache\_logs\2024-12-06T13_21_45_060Z-eresolve-report.txt
npm error A complete log of this run can be found in: C:\Users\admin\AppData\Local\npm-cache\_logs\2024-12-06T13_21_45_060Z-debug-0.log
`npm install --no-audit --save @testing-library/jest-dom@^5.14.1 @testing-library/react@^13.0.0 @testing-library/user-event@^13.2.1 web-vitals@^2.1.0` failed
解决办法
重新创建项目
- 首先清理当前目录:
- 删除
weather-app
文件夹
创建新项目(指定React版本):
npx create-react-app weather-app --template typescript --use-npm
如果上面命令还是报错,可以先全局更新
create-react-app
:npm uninstall -g create-react-app npm install -g create-react-app
然后再创建项目:
npx create-react-app weather-app
进入项目目录:
cd weather-app
启动项目:
npm start
固定React版本
如果上述方法仍然无法解决问题,可以尝试在 package.json
中指定具体的React版本:
确保在正确目录:
cd E:\React\react-weather-app\weather-app dir # 确认有 package.json 文件
备份
package.json
(可选):copy package.json package.json.bak
修改
package.json
:{ "name": "weather-app", "version": "0.1.0", "private": true, "dependencies": { "react": "18.2.0", // 移除 ^ 符号 "react-dom": "18.2.0", // 移除 ^ 符号 "react-scripts": "5.0.1" }, // ... 其他配置保持不变 }
清理旧依赖:
- 删除
node_modules
文件夹 - 删除
package-lock.json
文件
重新安装依赖:
npm cache clean --force # 清除 npm 缓存 npm install # 重新安装
验证安装:
npm list react # 检查 React 版本 npm list react-dom # 检查 React DOM 版本
启动项目:
npm start
处理缺少 web-vitals
依赖
在项目启动时,如果遇到缺少 web-vitals
依赖的错误:
ERROR in ./src/reportWebVitals.js 5:4-24
Module not found: Error: Can't resolve 'web-vitals' in 'E:\React\react-weather-app\weather-app\src'
webpack compiled with 1 error
可以按照以下步骤解决:
修改
package.json
,添加缺失的依赖:{ "name": "weather-app", "version": "0.1.0", "private": true, "dependencies": { "react": "18.2.0", "react-dom": "18.2.0", "react-scripts": "5.0.1", "web-vitals": "^2.1.4", // 添加这行 "@testing-library/jest-dom": "^5.16.5", // 添加这些测试相关的依赖 "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0" }, // ... 其他配置保持不变 }
重新安装依赖:
npm install
设置 Node 选项:
set SET NODE_OPTIONS=--openssl-legacy-provider
启动项目:
npm start
如果还有问题,可以尝试单独安装 web-vitals
:
npm install web-vitals@2.1.4
或者安装所有缺失的依赖:
npm install web-vitals@2.1.4 @testing-library/jest-dom@5.16.5 @testing-library/react@13.4.0 @testing-library/user-event@13.5.0
通过以上步骤,应该能够成功解决React版本不兼容问题,并顺利启动项目。
热门推荐
微信上的钱属于什么资产?被盗怎么办?
成都八大员证报考需要什么条件
印戒细胞癌怎么治疗比较好
都是插队惹的祸
全国派出所上班时间是几点?
37岁能否参加2024年地方公务员考试?
孟德尔分离定律知识总结
精神科患者为何要查泌乳素?升高有何危害?
农村户口迁出后还有宅基地吗?
欧元人民币汇率历史走势分析:极值记录与走势预测
中国医科大学宋江典团队提出基于视觉大语言模型的肺癌临床诊疗新方法
PS怎么调节图片清晰度:专业技巧与实践指南
锦鲤眼球向内凹陷的原因分析
DeepSeek叙事框架下,如何看当前港股走势?多重因素共振,能否支持长牛?
窗户玻璃防晒隔热膜哪一种最好
年轻人去电子厂怎么样?是浪费青春吗?年轻人到底应该怎么选择?
消炎的食物
劳务派遣员工意外身亡 公司获赔70万:法院这样判
偏瘫患者手腕痛怎么办?专业医生给出四大治疗方案
如何制定有效的工作规划和目标,让你的职业生涯更上一层楼?
早报:华为新形态手机外观曝光 比亚迪汉L开启预售
什么是专利申请流程图
被误读的中国文化:追根溯源讲“形而”,揭开形而上中下的真面目
AI生成小说的无限可能:ChatGPT引领文学新纪元
美联储继续按兵不动 4月起放慢缩表 鲍威尔反复强调经济前景不确定性极高
春季养肺黄金期,肺结节患者餐桌巧搭配
春季肝郁气滞别着急,八段锦功法助您养肝疏郁
疼!脚后跟总是开裂?真相不一定是皮肤缺水,当心与这些疾病有关
《西游记》中菩提祖师是谁?他是什么身份?
八次上春晚,岳云鹏的成功,不仅仅是因为师傅是郭德纲