背景:公司有新老不同的产品,使用的node版本不一样,每次都要手动切换node版本,对应的项目才能运行。这样很麻烦,有没有好的解决方法,就找到了volta。
1.为什么是volta?
管网介绍:使用 Volta,一旦您选择了 Node 引擎,您就不必担心它。切换项目不需要您手动切换版本。
- 跨平台支持,包括 Windows 和所有 Unix shell
- 快速设置和切换node引擎
- 逐个项目的无缝版本切换
- 支持多个包管理器(目前支持npm、yarn)
- 为协作者提供可复制的环境
2.安装
2.1 mac安装
mac安装nvm和volta都很简单,这里直接使用官方的安装方法。
curl https://get.volta.sh | bash
使用以上命令就可以安装好volta了,使用命令验证volta安装是否成功。
volta -v // 可以输出当前版本
2.2 windows 安装
在Windows上安装需要下载: volta安装包,按照提示一直next安装即可。
下载地址:https://github.com/volta-cli/volta/releases/download/v1.0.6/volta-1.0.6-windows-x86_64.msi
安装完成之后,也可以执行命令验证一下。
3.安装node
3.1 安装最新的版本
volta install node@latest
3.2 安装指定的版本
volta install node@14.5.0
3.3 下载node包,放到安装目录进行安装
如果总是安装失败,可以到node官方下载node安装包,进行本地安装。node下载地址:
https://registry.npmmirror.com/binary.html?path=node/
找到以后把包放到我们的安装目录,
- mac:/Users/用户名/.volta/tools/inventory/node
- win: C:\Users\admin\AppData\Local\Volta\tools\image\node
- 不需要管npm,本地安装之后就有了
- 直接在终端执行安装命令即可
4.查看安装环境
此时,我们已经安装了两个版本,可以使用命令查看我们安装的版本列表
volta list // 查看当前环境依赖
volta list all // 查看所有环境依赖
5. 项目版本无缝切换
- 我们有了多个版本的node,就可以到项目中进行对应的设置了。
- 比如我们vue2的项目需要14版本的node,前往项目目录执行命令
volta pin node@14
- 如果我们使用node@14,volta会帮助我们找14中最合适的版本,可能不是我们安装过的版本,如果想使用我们安装的版本,必须把版本号写全
volta pin node@14.5.0
- 此时我们的项目package.json中会多一个配置
"volta": {"node": "14.5.0"
}
6. 支持多个包管理器(目前支持npm、yarn)
- 此配置用来指明我们当前项目设置的volta的环境,包含node、npm、yarn。
- 虽说node自带npm,但如果我们想限制我们项目npm版本也是可以的,比如限制为8.0.0
volta pin npm@8.0.0
- 执行完成之后,package.json 中会多一个配置
"volta": {"node": "14.5.0","npm": "8.0.0"
}
- 如果想设置 yarn 也是同样的道理。