package.json版本

1
2
3
4
5
6
^ 开头的版本会固定首个大版本,后面的两个小版本会更新到最新,如 vue ^2.5.0 => vue 2.6.14
~ 开头的版本会前两个版本,后面的小版本会更新到最新 vuex ~3.1.0 => vuex 3.1.3
不带符号,直接写版本号会安装固定的版本 vue-router 3.5.3 => vue-router 3.5.3
最小的版本设置为 x 或者 *,其最小的版本号会更新到最新 react 15.4.x => react 15.4.2
依次类推任何一位版本设置为 x 或者 *,其当前位置的版本号都会更新到最新
永远保持最新版本可以将版本号设置为 x 或者 *,如 pinia * => pinia 2.0.12

npm-check-updates(npm i -g npm-check-updates)工具的使用

查看单个包的最新版本

1
ncu vue

更新 package.json(所有) 的最新依赖项

1
ncu -u

更新单个依赖

1
ncu -u vue

查看全局的安装包最新版本

1
ncu -g

检查某一个包

1
2
3
ncu vuex
ncu -f vuex
ncu --filter vuex

检查某一类的包

1
2
ncu 'vue*'
ncu "/^react*$/"

检查除某个包以外的所有包

1
2
3
ncu \!vue
ncu -x vue
ncu --reject vue

检查特定的几个包

1
2
3
ncu vue vuex
ncu vue,vuex
ncu -f "vue vuex"

仅升级到最新的 patch 版本(小版本)

1
ncu --target patch

检查不以 react 开头的包

1
ncu \!'react*'

同理,更新的话只要在上面的每个语句后面加上 `-u

npm install和update两者最大的区别是在对待已经安装过的模糊版本时候

  • npm install会忽略模糊版本

  • npm update会更新模糊版本至最新

另外: install and update 处理 devDependencies 方式也不同

  • npm install 会安装/更新devDependencies,除非你指定 --production标志
  • npm update 会忽略 devDependencies,除非你指定 --dev 标志