用它来管理Node版本,真的太方便了

在之前的文章中写过了关于nvm手动切换版本的问题,很多jym在评论区反馈有最方便的工具可以用来切换node的版本。volta 是另一个现代的 Node.js 版本管理工具,在笔者亲自的试用之后发现volta的开发其实更适合平时大家在公司进行不同node版本的项目。

Volta是什么

Volta 可以管理不同工具的版本,例如 Node.js 和 Yarn。开发者可以为每个项目选择特定的node版本,不会干扰其他需要不同node版本的项目,也不需要在启动项目的时候来回切换。

另外一个优点就是它可以根据项目的配置来自动的切换node的版本,它可以检测项目中的配置文件并自动切换到正确的版本,很大程度上简化了开发日常工作不同项目切换的问题。

Nvm和Volta的一些区别

  1. 版本管理:

    • Volta: Volta 强调项目级别的版本管理。我们可以对不同的项目设置不同的node版本,而不是全局只有一个node版本,比nvm更加的灵活一点,以确保不同项目使用不同版本的 Node.js
    • nvm: nvm 更倾向于全局管理 Node.js 版本,您可以全局切换 Node.js 版本,但这会影响计算机上的所有项目。
  2. 自动切换:

    • Volta: Volta 具有自动切换功能,可以根据项目的配置自动切换到正确的 Node.js 版本,从而简化了开发者的工作。
    • nvm: nvm 需要手动切换 Node.js 版本,开发者需要手动运行命令切换全局或本地 Node.js 版本。
  3. 插件生态系统:

    • Volta: Volta 具有插件系统,允许开发者为不同类型的工具和项目添加插件。这使得 Volta 更加灵活,并且可以与其他开发工具集成。
    • nvm: nvm 本身不提供插件系统,通常需要结合其他工具来实现更多功能。
  4. 跨平台支持:

    • Volta: Volta 在不同的操作系统上都提供良好的支持,包括 macOS、Linux 和 Windows。
    • nvm: nvm 也在多个操作系统上可用,但在某些情况下,可能需要额外的配置。

Volta的使用

  1. Volta安装:

    mac安装

    js 复制代码
    curl https://get.volta.sh | bash

    Windows安装

    less 复制代码
    lessCopy code
    iex (iwr https://get.volta.sh -UseBasic)
  2. 检查node版本:

可以通过package来检查我们的项目需要用到的node版本,可以看到这个配置允许你的项目在 Node.js 版本在12或者是大于14的版本

目前的node版本是16

  1. 安装指定node版本:

可以使用 volta install 命令来安装任何 Node.js 版本

js 复制代码
volta install node@15

我们先来安装个版本为15的node看看

  1. 查看已安装的node版本列表:

volta list 命令可以查看已安装的 Node.js 版本以及当前固定的版本

体验最大特点

自动切换就是volta的最大特点,让我们来一起体验一下

给项目指定node版本,会在package.json自动生成一条配置

js 复制代码
volta pin node@15

我这里指定是是15,在指定版本的时候需要先安装对应的版本,不然会出现以下报错

命令执行成功可以看到package.json生成一条volta的配置

为了验证一下,我们用volta下载一个13版本的node,看看volta会不会给我们默认使用15的版本

当前项目用的是15版本

切换到另外的项目 安装 指定 版本是13 大工告成!!!每个项目拥有自己的node版本,泰库啦!

总结

Volta 更侧重于项目级别的 Node.js 版本管理,各位开发者平时在公司大多数都是相对于项目在进行开发,所以在node的版本管理上,用volta的灵活性比nvm的管理更加的灵活一些,需要自己手动操作的地方也比较少,并具有自动切换和插件系统,很大程度上简化开发工作。

但对于nvm来说则是针对全局的开发环境,需要开发者自己手动切换版本,对习惯于全局管理node版本的开发者更加适用。

🙏 感谢您花时间阅读这篇文章!如果觉得有趣或有收获,请关注我的更新,给个喜欢和分享。您的支持是我写作的最大动力!

往期好文推荐

相关推荐
Mintopia几秒前
Node.js 与前端现代工具链进阶指南
前端·javascript·node.js
创意锦囊1 分钟前
JWT 应该存哪儿?5 种方式全面解析,选对方式很关键!
前端
Json_1 分钟前
智慧酒店官网-前端静态网站模板【前端练习项目】
前端·css·html
凯哥19705 分钟前
Socket.IO 分布式系统优化指南
redis·后端
异常君10 分钟前
深入剖析 Java ReentrantLock:解锁显式锁的高级特性与实战应用
java·后端
Python智慧行囊11 分钟前
前端开发基础:HTML 与 CSS 入门详解
前端·css·html
写bug写bug17 分钟前
彻底搞懂如何通过 ZooKeeper 实现注册中心
java·后端·zookeeper
追逐时光者25 分钟前
Visual Studio 2022 v17.13新版发布:强化稳定性和安全,助力开发提效!
后端·.net·visual studio
写bug写bug28 分钟前
try-catch应该写在for循环里面还是外面?
java·后端