如何运营网站,建设网站的价值,手机英语学习网站触屏版手机wap用户登陆注册网站模板115,包头建网站公司哪家强最近刚接手一个“新”项目#xff0c;让我很无语。明明是去年起的项目#xff0c;但是它所用的技术栈都很旧#xff0c;我启动项目#xff0c;控制台一堆warning报错#xff0c;然后项目结构也很让我不适应#xff0c;很多地方都可以用文件夹包一下来方便定位。哎#x… 最近刚接手一个“新”项目让我很无语。明明是去年起的项目但是它所用的技术栈都很旧我启动项目控制台一堆warning报错然后项目结构也很让我不适应很多地方都可以用文件夹包一下来方便定位。哎让我头大 事情的起源来自于一次依赖安装。因为业务需求我安装一个第三方库但是它不支持React16然后我想着干脆就升到17吧反正也没什么新特性应该没问题不用改太多东西。结果终端报错查看一下果然是那些旧依赖导致的要是全部将他们升级到对应17的版本工作量太大更何况有些库根本不维护了直接选择性无视吧。。。 我的思路
1. 查看项目所用的框架版本所对应的react版本。比如说我们的项目用的是Ant Design Pro 4.5.0版本要求React17.0.2版本。npm5及以上版本--save是默认行为不需要显式添加
npm install react17.0.2 react-dom17.0.2
2. 由于项目依赖太旧了于是解析依赖关系时出现冲突终端报错
有两个方法
2.1 旧版本的依赖项无法与新版本的npm兼容这就需要我们后缀--legacy-peer-deps。推荐
--legacy-peer-deps 选项允许npm在处理peer dependencies时采用旧版本的方式以确保与旧版本的依赖项保持兼容性
npm install react17.0.2 react-dom17.0.2 --legacy-peer-deps
2.2 遇事不决后缀--force。
--force 选项强制 npm 执行某个操作即使有潜在的问题或依赖冲突。使用 --force 可能会导致安装不兼容的依赖因此谨慎使用。
npm install react17.0.2 react-dom17.0.2 --force
3. 正常情况下我们刚接手到一个新项目如果npm install报错那我们直接降node版本就行了
推荐使用nvm管理node版本nrm管理npm源