npm install 在不同机器之间的 package-lock.json 中产生了奇怪的差异

And*_*ija 20 node.js npm package.json npm-install

我尝试过谷歌搜索,但找不到任何东西,所以在这里尝试 - 我们最近升级到node 16.13.0npm 8.1.0,完成后npm install我们得到以下差异package-lock.json

-      "devOptional": true
+      "dev": true
Run Code Online (Sandbox Code Playgroud)

-      "integrity": "sha512-15Ft8p1vVEvBQDjZV6XSQULHIbRTetygyGyaF953pq/ukW0AnnHD3Kra7NasJxryWfbBrD18i11uors0CvnOwg==",
-      "requires": {}
+      "integrity": "sha512-15Ft8p1vVEvBQDjZV6XSQULHIbRTetygyGyaF953pq/ukW0AnnHD3Kra7NasJxryWfbBrD18i11uors0CvnOwg=="
Run Code Online (Sandbox Code Playgroud)

一小部分软件包会发生这种情况,但这个小百分比是 60 左右的软件包,我不明白为什么会发生这些差异(特别是因为我们使用相同的node/ npm

小智 8

对于遇到同样问题的人,请检查 npm config 是否legacy-peer-deps设置为 false

npm config ls -l | grep legacy-peer-deps检查它的值

npm config set legacy-peer-deps false将其设置为 false