为什么不“npm install”重写package-lock.json? 如果不存在也不会生成新的?

我希望在package.json中添加新的依赖关系并运行npm install之后,在package-lock.json文件中看到更改 – 但是package-lock.json没有更改。 设置:节点版本6.11.0 npm版本3.10.10我试图删除旧的package-lock.json,运行后npm install – 没有生成新文件。 任何人都可以请告诉我如何续订package-lock.json? 编辑:偶尔我和我的同事有不同的npm版本,所以我有代码库中的包lock.json,但无法续订,因为我目前的npm版本不支持此function。 更新后,所有工作正常。

package-lock.json是在npm v5中引入的。 您的npm v3.10.10版本不使用它,您可能需要更新它

为什么不“npm install”重写package-lock.json?

因为package-lock.json是告诉npm准确地安装哪些模块,如果存在的话。 如果不存在,npm将其写入以“caching”依赖关系树进行后续安装。

只需rm package-lock.json并再次安装以更新package-lock.json

如果不存在也不会生成新的?

如果你没有得到任何package-lock.json生成,你很可能有一个旧版本的npm不支持它, 或者你已经configurationnpm不生成它(这是可能的)。