我升级到最新的稳定后node和npm,我试过npm install moment --save。它package.json使用插入符号^前缀保存条目。以前,它是波浪号~前缀。
node
npm
npm install moment --save
package.json
^
~
请参阅NPM 文档和semver 文档:
~version
~1.2.3
^version
^2.3.4
只要第一个数字(“主要”)至少为 1:
~锁定主要和次要号码。当您准备仅接受错误修复(第三个数字中的增量),但不希望进行任何其他更改,甚至不希望添加功能的小升级时,可以使用它。
^只锁定主号码。当您愿意接收错误修复(第三个数字的增量)和添加功能但不应破坏现有代码的小升级(第二个数字的增量)时,可以使用它。但是,您不希望更改破坏现有代码(第一个数字中的增量)。
除此之外,^是不支持由旧版本的NPM,并应谨慎使用。
所以,^是一个很好的默认值,但它并不完美。我建议仔细选择和配置对您最有用的 semver 运算符。
(修改以避免说“修复”和“错误修复”与“修复”的使用冲突,这是令人困惑的)
我还想添加官方 npmjs 文档,其中描述了所有版本特异性方法,包括问题中提到的方法
version
>version
>=version
<version
<=version
1.2.x
*
latest
上面的列表并不详尽。其他版本说明符包括 GitHub url 和 GitHub 用户存储库、本地路径和带有特定 npm 标签的包