npm ERR!integrity checksum failed when using sha1: wanted xxx but got xxxx
今天构建失败的时候看到一行报错

npm ERR! sha1-ixxxxxxxxo= integrity checksum failed when using sha1: wanted sha1-ixxxxxxo= but got sha512-xxxxxxxxxg== sha1-2xxxxxxxxxxx0=. (7610 bytes)

仔细查看日志内容,意思是说当前的 sha1 值 和目标不一致,导致验证不通过失败。
复制了前面的 sha1 那段到编辑器里全局搜索了一下,发现 package-lock.json 里面有相同的值,对应字段名 integrity。

解决方法✅:
替换 package-lock.json 中的 sha1 值 为 npm 期望的 sha1 值
把 package-lock.json 删掉后重新 npm install
推荐方法 1,简单易操作,当然最彻底的解决办法还是删掉,毕竟删掉 package-lock.json 后可能会有其他问题...
总结就是,npm 报这个错就是由于某些原因修改了 npm 包的唯一识别码,导致 npm 验证不通过,无法获取对应的包。