npm WARN read-shrinkwrap This version of npm is compatible with loockfileVersion@1, but package-lock

当npm i 的时候报错:
npm WARN read-shrinkwrap This version of npm is compatible with loockfileVersion@1, but package-lock.json was generated for lockfileVersion@2. I’ll try to do my best with it!

如下图:
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d7e88dba36cb4c92a6e4ba78952884e1.png

根据这个报错信息知道,目前你电脑npm 版本现在只适用于lockfileVersion@1,但是现在你的package-lock.json是源于lockfileVersion@2的。因为代码中使用的某个插件只能用特定版本的npm下载,所以会报错导致npm install失败。这时就需要升级npm版本就可以了。

此时需要检查我们当前的node版本和npm版本号。

  • 解决方法一:

可以执行当前的命令去升级npm版本

npm install -g npm

但是可能会出现报错,原因是npm版本太高、和当前的node版本是不兼容不匹配的,因为这个命令是直接升级npm最高版本。(本人是不太推荐使用这个命令的)(因为版本太高还是需要使用降级命令进行降级)

  • 解决方法二:

去升级node版本

npm install -g n

意思是借助n模块去更新node版本,但是会出现报错信息

npm ERR! notsup Unsupported platform for [email protected]: wanted {“os”:“!win32”} (current: {“os”:“win32”,“arch”:“x64”})

此时可以强制安装一下就ok了

npm install -g n --force

但可能会遇到运行成功之后,再次执行n -v 会出现’“bash”’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

  • 解决方法三:
    在windows下升级noedjs直接下载安装即可,可以直接前往Download | Node.js官网下载node的指定版本即可。无须n模块。
    可以先卸载nodejs,(下载nodejs时npm也包含在内)重新安装nodejs;【卸载一定要卸载干净哦~】
    也可以直接安装想要的版本,直接进行覆盖。

你可能感兴趣的:(npm,前端,node.js)