项目维护过程中,可能会因为依赖包存在漏洞而升级依赖,或者因为需要高本版中提供的新特性而升级依赖。

在升级依赖之前,可以先执行 npm outdated 命令,查看当前哪些已安装软件包版本过时了。
在这里插入图片描述

标签释义
current代表当前版本号
wanted满足 package.json 中指定的 semver 范围的包的最大版本,如果没有可用的 semver 范围 ,则wanted显示当前安装的版本。
latest在注册表中标记为最新的包版本
location包在依赖树中的位置
  • 红色表示有符合 semver 要求的较新版本,可以立即更新。
  • 黄色表示有高于 semver 要求的更新版本(通常是新的主版本或新的 0.x 次版本),需要谨慎操作。

为大家提供两种升级依赖的方法:
1、执行 npm update 命令

npm update [-g] [<pkg>...]

此命令会将 npm outdated 中列出的所有包更新为最新版本(由tag配置指定),尊重包及其依赖项的 semver 约束(如果它们也需要相同的包)。

  • 会安装缺少的软件包
  • 如果-g指定了标志,此命令将更新全局安装的包。
  • 如果未指定包名称,则将更新指定位置(全局或本地)中的所有包。

2、先卸载指定的依赖,再重新安装指定版本的依赖

npm uninstall node-sass
npm install -D node-sass@5.0.0

补充:npm版本号规范
使用 Npm 发布一个包的时候,往往要遵循 x.y.z 的规则,发布的第一个版本一般为 1.0.0。

  • z 补丁号。修改某个功能的 Bug 时,z 值 +1 变成 1.0.1;
  • y 小版本号。增加一个新功能,且不影响已有功能,y 值 +1 变成 1.1.0;
  • x 大版本号。引入新的变化,破坏向后兼容,x 值 +1 变成 2.0.0。

package.json 中包版本 ~ 与 ^ 说明:
假定某个包的版本是 1.4.0

版本号版本取值范围释义
~1.4.0>=1.4.0 && < 1.5.0小版本不变,补丁号可以取最大值
^1.4.0>=1.4.0 && < 2.0.0大版本号不变,小版本号可以取最大值
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐