如何 npm 更新 package-lock.json 中的依赖项版本?

Dra*_*tle 7 node.js npm npm-update

正如标题所示,但是:

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

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

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

有没有一种安全/专业的方法来更改 package-lock.json,并通过 npm 保持更新?

Har*_*hal 4

如果你想更新 package-lock.json 中的版本,你可以通过使用更新包来完成

npm update <package_name>
Run Code Online (Sandbox Code Playgroud)
  • '^'>>“大约相当于版本”
  • '~'>>“兼容版本”

在 package.json 中阅读有关 '^' 和 '~' 的更多信息 >>参考

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

您想了解的有关 package-lock.json 的所有信息

希望这能帮助您理清思绪。