为什么 "npm update" 会更新模块而不是 package.json 中的 SemVer?

Why "npm update" will update the module(s) but not its SemVer in package.json?

  1. 在“package.json”中,我显然有一个过时的 express 模块版本 --> “4.10.0”

  1. “npm 过时”建议更新到“4.17.1”

  1. 尽管“npm update”将 express 模块更新为“4.17.1”,“package.json”仍然是“4.10.0”

我的问题是:如何同时更新模块和“package.json”?

考虑使用 npm-check-updates

起初我不想为这个基本任务安装一些东西,但是 npm 缺少这个“基本”选项

如果您有要更新的包,您可以使用 npm(而不是更新)安装特定版本

npm install --save-exact express@4.16.1

Yarn 也支持 add/upgrade,无需额外选项。

yarn upgrade express@4.16.1

虽然它对于大型更新来说很笨重,请参阅