我很确定 npm在您运行后会clean-webpack-plugin
从一个版本0.1.18
到另一个版本更新应用程序文件:如您的问题中所述。0.1.19
npm update clean-webpack-plugin
但是,npm 不会更新您的条目,package.json
因为理论上它实际上没有必要这样做。为什么?...因为版本"^0.1.18"
在package.json
. 即版本用插入^
符号指定。
假设您要发布您的项目,^0.1.18
然后package.json
任何后续运行的用户npm install
实际上都将获得版本0.1.19
(警告:clean-webpack-plugin
在撰写本文时,当前版本历史记录在 npm 存储库中)。
因此,简而言之,我很确定0.1.19
您的系统上已经安装了该版本,它根本没有更改package.json
. 实际上没有必要这样做,并且仍然遵守 semver 的规则和插入符号的使用。
所以插入符号应该意味着,如果可用,^
您可以将包更新到版本,对吗?0.9.9
插入符号"^0.1.18"
对 npm 说,我将接受对最新次要版本的任何更新,但我不会接受主要更新。即^0.1.18
表示该范围内的任何更新>=0.1.18 <1.0.0
(也允许该范围内的 PATCH 更新)。
验证是否已更新:
要验证是否0.1.19
实际安装了版本,您可以cd
到您的项目目录并运行:
npm ls clean-webpack-plugin
您应该看到以下记录到您的控制台:
...
└── clean-webpack-plugin@0.1.19
但我想在运行后package.json
显示:"^0.1.19"
npm update
当您最初运行时,npm update clean-webpack-plugin
您可以:
- 附加
--save-dev
参数(如果它在您的devDependencies
部分中列出,则适用package.json
)。
- 或者,附加
--save
参数(如果它在您的dependencies
部分中列出,则适用package.json
)。
附加--save-dev
或--save
酌情附加npm update clean-webpack-plugin
将更新package.json
. 这在 npm 文档的Recording Updates with--save
部分中有进一步的解释。
通过这样做,您可以将其视为重新指定>=
您将接受的更新范围的初始部分。
笔记
npm update clean-webpack-plugin
使用附加--save
or参数运行--save-dev
不会有任何影响,如果npm ls clean-webpack-plugin
报告:
...
└── clean-webpack-plugin@0.1.19
没有什么可更新的,所以我只需手动指定"^0.1.19"
.package.json