最近我们团队推行这个工具,所以我也介绍给大家,本文非常简单,只涉及到几条命令而已就能轻松掌握这个工具。
只需5番钟!!你就能解决开发一大痛点
Volta 是一个可以轻松管理Javascript 命令行工具的解决方案,不仅可以自动管理Node 版本,还可以自动管理其他命令行工具的版本
具体来说
之前项目中如果依赖了不同的 node 版本,我们通常使用 nvm 手动切换版本。
这样可以解决一部分场景,如果你有多个依赖不同 node 版本的项目同时开发的话,你可能就要爆炸了
加上
1、新老项目的更替问题。有些老项目使用旧版本 node,而新项目肯定是与时俱进使用 新版本Node。
2、依赖包依赖node版本问题。有些依赖包只支持 node 12 版本编译,有的只支持 node 10 编译。不然还会报错,我真的被搞烦了,印象最深就是 canvas 这个包
版本手动切来切去让人烦躁,就不要给自己开发添堵了
而 Volta 可以根据项目自动切换Node 版本,比如 A 项目依赖 node10,B 项目依赖 node12,使用了 Volta 管理之后
A 项目的 shell,node 自动切换成 10
B 项目的 shell ,node则自动切换成12
并且 Volta
1、不仅支持自动管理Node,还支持管理其他命令行工具,比如 vue-cli 等
2、跨平台支持(windows、unix)
3、支持多个包管理器(npm,yarn)
更多查看官网
https://docs.volta.sh/guide/
Volta安装
先全局安装 volta
1、Unix 系统下
curl https://get.volta.sh | bash
2、window 系统下
打开这个链接下载安装包
https://github.com/volta-cli/volta/releases/download/v1.0.7/volta-1.0.7-windows-x86_64.msi
具体可以查看
https://docs.volta.sh/guide/getting-started
Node 安装
安装全局默认node版本
1、可以只指定大版本,也可以精细到小版本。
2、如果项目中没有绑定版本的时候,会使用默认版本
volta install node@14
管理项目级别node版本
进入到项目根目录,打开 shell,执行以下命令
同样可以只指定大版本,也可以精细到小版本
volta pin node@12
会在 package.json 增加node 版本信息,这就是 Volta 可以做到项目级别管理版本的原因
{
"name": "demo",
"volta": {
"node": "10.24.1"
}
}
这样操作一番,打开项目的shell ,node 会自动指定到配置的版本
命令行工具包安装
以前我们在项目中,想使用该项目自己安装的工具版本,以安装 vue-cli 为例
一般是走 script 命令,或者 npx
如果我们在shell 中直接使用命令,会走到全局安装的包中
现在我们使用了 volta 之后,就可以直接使用命令
Volta 同样会读取到 package.json 中的工具版本,从而完成自动切换
1、先全局安装
npm i -g @vue/cli@5.0.0
安装完成查看版本
❯ vue -V
@vue/cli 5.0.4
2、进入 A 项目
npm i @vue/cli@3.0.0
查看版本
❯ vue -V
@vue/cli 3.0.0
3、进入 B 项目
npm i @vue/cli@4.0.0
查看版本
❯ vue -V
@vue/cli 4.0.0
4、进入C 项目(未指定vue-cli 版本,从而使用了全局默认)
❯ vue -V
@vue/cli 5.0.4
怎么样,是不是很简单,5分钟就能学会