一行命令更新所有 npm 依赖包

npm 包的更新速度很快,为了将项目或者全局依赖更新到最新版本。传统的做法是一个一个更新,比如更新 react 到最新版本,命令如下:

# npm   npm i --save react@latest

# yarn   yarn add react@latest

yarn 是 facebook 发明的新一代 js 包管理器,支持离线使用。这是 npm 与 yarn 的 命令对照

但是,这种做法相当耗时。有没有更简单的方法呢?

答案是使用 npm-check 或者 yarn。两者都需要全局安装。

npm i -g yarn

npm i -g npm-check

使用 npm-check 更新项目依赖

在项目根目录运行

npm-check -u

输出如下:


空格切换包是否更新,Control + C 取消更新,回车就是执行更新。

使用 yarn 更新项目依赖

在项目根目录运行

yarn upgrade-interactive  --latest

输出如下:


yarn 提供了全选切换功能,就是按键 A,空格切换包是否更新,Control + C 取消更新,回车就是执行更新。

yarn 的更新命令太长了,谁记得住,这种时候,请合理使用命令行工具的帮助,比如运行 yarn help

更新命令对照表

更新全局依赖同上


检测原理

yarn 是根据 yarn.lock 文件来检测版本是否是最新的,所以项目是使用 npm 安装依赖包,更新前要运行 yarn install 一下。

npm-check 是检测 package.json 文件,项目存在 node_modules 文件夹即可更新。

更新提醒

没有交互就是将依赖包直接更新到最新版本,推荐使用交互式更新,会有更新的警告信息。

最新的依赖包,API 可能发生重大改变。为了顺利更新,更新前请 git commit 一下,更新失败了也能顺利回退。

不推荐使用 cnpm

为了加快安装依赖的安装速度,可能被同事安利 cnpm,但是这样会导致包的依赖安装不正常,项目无法运行。

更好的做法是使用 nrm 切换下载源。

平时使用 yarn 装包,npm 运行脚本。

安装 nrm

npm i -g nrm

查看下载镜像源

nrm ls

输出如下

切换镜像源

nrm use taobao

装包命令不变,比如安装 react 。

# npm npm i --save react

# yarn yarn add react

体验飞一般的装包速度,再也不是装包一小时,码代码五分钟。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文参考:【原】npm 常用命令详解从0开始发布一个无依赖、高质量的npm包Yarn 官网 上一篇文章 npm总结...
    双面小Q阅读 2,285评论 0 6
  • 原文 在中国,安装 & 升级 npm 依赖的正确方法 05 NOVEMBER 2016onnpm-check,cn...
    SunnyLYummy阅读 14,760评论 1 3
  • npm 包管理器的常用命令 测试环境为node>=8.1.3&&npm>=5.0.3 1, 安装命令 //全局安装...
    13122阅读 2,971评论 0 2
  • 今天年过了,却吃了顿大餐,开心极了。菜色非常丰富,有清蒸海鱼,炒螃蟹,炒海螺,椒盐皮皮虾,蟹粥,清蒸生蚝,清蒸带子...
    么茹阅读 147评论 0 0
  • 普普通通的名字,在我没有走进电影院之前,我根本没想象过它能带来怎样的疗愈。 而当我看完这部电影,看...
    活着_084b阅读 258评论 0 0