volta了解和使用

volta是什么

使用背景

手头并行了几个项目,由于历史原因,有个项目只能用低版本的node, 而另一个项目需要高版本的node 因此在切换项目的时候,就需要手动切换node 版本,频繁的切换版本着实有点烦人 正好发现了volta 可以解决我的问题

这是什么玩意儿

Volta ------ 这是一个现代的 JavaScript 工具链管理器,可以快速、便捷地管理 node、npm、yarn、pnpm 等工具的版本,类似于更加智能友好的 nvm。是的,我主要用他来替换nvm 使用。

怎么用

下载 github.com/volta-cli/v...

volta-2.0.2-windows-x86_64.msi

常见用途与基本命令

a) 安装 node (全局环境)

复制代码
bash复制代码
volta install node

安装最新版 node,或指定版本:

perl 复制代码
bash复制代码
volta install node@18   # 安装 node 18.x

b) 安装 npm、yarn、pnpm

复制代码
bash复制代码
volta install npm
volta install yarn
volta install pnpm

也可以指定版本:

perl 复制代码
bash复制代码
volta install npm@7             # 安装 npm 7.x
volta install yarn@1.22.19      # 安装 yarn 指定版本

c) 查看已安装、当前激活版本

复制代码
bash复制代码
volta list

这样会显示当前安装的所有工具及其版本。

d) 设置项目本地 node 版本(项目级管理)

  1. 切换到你的项目目录

  2. 运行(比如):

    kotlin 复制代码
    bash复制代码
    volta pin node@18
    volta pin yarn@3

    这样会在项目的 package.json 里写入 volta 配置,其他用 volta 的团队成员进入该目录,会自动用同样的 node/yarn 版本。

nvm 用的好好的,为啥要换工具

  • 自动切换到所需 node 版本,跨项目无需手动 nvm use。
  • 安装工具更干净,不会全局污染。
  • 与 nvm 对比: nvm 只管理 node,Volta 不仅管理 node,还可以管理 yarn/pnpm/npm 等各种全局 cli 工具。
  • 性能更好,不需要每次 shell 启动都重新切 profile,启动很快。

配置文件说明

package.json 里有自动生成的一块:

json 复制代码
json复制代码
"volta": {
  "node": "18.16.0",
  "yarn": "1.22.19"
}

卸载/切换版本

css 复制代码
bash复制代码
volta uninstall node
volta install node@16

遇到错误

一顿操作之后,以为万事大吉了,结果vscode 提示volta 不是可运行的命令

  1. 关闭vscode 窗口重新打开
  2. 重启电脑

终于在重启电脑之后可用了

总结

volta 常用命令

  • volta install <package[@version]> 安装 node/npm/yarn 等
  • volta pin <package[@version]> 项目级锁定工具版本
  • volta list 查看当前状态
  • volta uninstall <package> 卸载包
相关推荐
华仔啊8 小时前
用 Vue3 + Canvas 做了个超实用的水印工具,同事都在抢着用
前端·vue.js·canvas
Bacon8 小时前
前端:从0-1实现一个脚手架
前端
Bacon8 小时前
前端项目部署实战 nginx+docker持续集成
前端
beckyye8 小时前
阿里云智能语音简单使用:语音识别
前端·语音识别·录音
东东2339 小时前
前端规范工具之husky与lint-staged
前端·javascript·eslint
jump6809 小时前
手写事件总线、事件总线可能带来的内存泄露问题
前端
岁月宁静9 小时前
在 Vue 3.5 中优雅地集成 wangEditor,并定制“AI 工具”下拉菜单(总结/润色/翻译)
前端·javascript·vue.js
执沐9 小时前
基于HTML 使用星辰拼出爱心,并附带闪烁+流星+点击生成流星
前端·html
#做一个清醒的人9 小时前
【electron6】Web Audio + AudioWorklet PCM 实时采集噪音和模拟调试
前端·javascript·electron·pcm
拉不动的猪10 小时前
图文引用打包时的常见情景解析
前端·javascript·后端