4

如标题所示,但是:

  • 如果可能的话,我不想在 package-lock.json 中手动重写版本字符串,
  • 我尝试了以下操作:如何将 package.json 中的每个依赖项更新为最新版本?但当然正如预期的那样,它只更新了 package.json 文件,
  • 我查看了文档:package-lock.json 文档package-locks 解释文档
  • 正如在这个问题中所写,npm 安装行为在 npm v5.1.0 中发生了变化,如果我是正确的,这意味着如果我的 npm 版本高于 5.1.0,我的应用程序将(默认情况下)总是从 tha 安装 npm package.json,而不是 package-lock.json。但是,我的 package-lock.json 中仍然列出了一个存在漏洞的依赖项,我的 github 正在为此发出警告。

如何最好地解决这个问题?如果我还是从 package.json 安装,那么删除 package-lock.json 是一个好习惯吗?我应该保持更新吗?如果我想改用锁怎么办?

我以前从来没有做过这样的事情,所以我什至不确定如果我只是在 json 中重写了一个版本字符串,它会起作用还是会破坏 npm 安装。

是否有一种安全/专业的方式可以更改为 package-lock.json,并通过 npm 对其进行更新?

4

1 回答 1

4

如果你想更新 package-lock.json 中的版本,你可以通过使用更新包来做到这一点

npm update <package_name>
  • '^' >> "大约相当于版本"
  • '~' >> "与版本兼容"

在你的 package.json 中阅读更多关于 '^' 和 '~' >>参考

由于 package-lock 为每个模块及其每个依赖项指定了版本、位置和完整性哈希,因此它创建的安装将是相同的,对于共享项目中的每个用户每次都是一样的。

你想知道的关于 package-lock.json 的一切

希望这能帮助你理清思路。

于 2018-06-28T16:01:14.693 回答