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

标签 node.js npm npm-update

如标题所示,但是:

  • 如果可能的话,我不想在 package-lock.json 中手动重写版本字符串,
  • 我尝试了以下方法:How do I update each dependency in package.json to the latest version?但当然正如预期的那样,它只更新了 package.json 文件,
  • 我查看了文档:package-lock.json docspackage-locks explanation docs ,
  • 写在this question ,npm 安装行为在 npm v5.1.0 中发生了变化,如果我是正确的,这意味着如果我的 npm 版本高于 5.1.0,我的应用程序将(默认情况下)始终从 package.json 安装 npm,而不是package-lock.json 的。但是,我的 package-lock.json 中仍然列出了一个存在漏洞的依赖项,我的 github 对此发出尖叫警告。

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

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

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

最佳答案

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

更新包来实现
npm update <package_name>
  • '^' >> "大约相当于版本"
  • '~' >> "兼容版本"

在 package.json 中阅读更多关于“^”和“~”的信息 >> Reference

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

Everything You Wanted To Know About package-lock.json

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

关于node.js - 我如何 npm 更新 package-lock.json 中的依赖版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51083789/

相关文章:

javascript - 当进程崩溃时,Nodemon 丢失控制台输出

android - 如何将 phonegap 更新到 3.4.0

node.js - "npm install"不创建node_modules目录,或者如果存在则不复制.node文件

node.js - 查找 Node 包上次更新的时间

angular - 没有 npm 更新 Angular 10 的 git 新分支

javascript - JSReport 请求错误

node.js - 使用 Node.js OauthClient "auth-code"流程进行身份验证

javascript - 客户端如何通过socketio连接到新房间并保留所有旧房间