我从另一个项目中复制了 package.json
并且现在想将所有依赖项升级到最新版本,因为这是一个新项目,如果它坏了我不介意修复一些东西。
最简单的方法是什么?
我知道的最好方法是运行 npm info express version
然后手动更新 package.json
中的每个依赖项。一定会有更好的办法。
{
"name": "myproject",
"description": "my node project",
"version": "1.0.0",
"engines": {
"node": "0.8.4",
"npm": "1.1.65"
},
"private": true,
"dependencies": {
"express": "~3.0.3", // how do I get these bumped to latest?
"mongodb": "~1.2.5",
"underscore": "~1.4.2",
"rjs": "~2.9.0",
"jade": "~0.27.2",
"async": "~0.1.22"
}
}
对于 Yarn 特定的解决方案,请参阅 此 Stack Overflow 线程。
原文由 Raine Revere 发布,翻译遵循 CC BY-SA 4.0 许可协议
看起来 npm-check-updates 是现在实现这一点的唯一方法。
在 npm <3.11 上:
只需将每个依赖项的版本更改为
*
,然后运行npm update --save
。 ( 注意: 在最近(3.11)版本的 npm 中损坏)。前:
后:
当然,这是更新依赖的钝锤。如果——正如你所说——项目是空的并且没有什么可以破坏,那很好。
另一方面,如果您在一个更成熟的项目中工作,您可能希望在升级之前验证您的依赖项中没有重大更改。
要查看哪些模块已过时,只需运行
npm outdated
。它将列出所有已安装的具有较新版本的依赖项。对于 Yarn 特定的解决方案,请参阅 此 StackOverflow 答案。