网站首页 > 精选文章 正文
Node.js是现在前端开发离不开的编程环境,而Node.js的更新也十分频繁,尽管Node.js向下兼容,但是不同工具和项目依然存在不兼容的版本问题,于是在同一台主机安装不同版本的Node.js成了一个必不可少的操作。
长久以来,nvm就是多个Node版本切换的必备工具,主要是支持Linux和MacOS系统,不支持多系统跨平台,在Windows系统不兼容,后来又单独出了一个nvm-Windows版本才能在Windows系统使用。
不过前端的世界非常卷,如今Node.js的版本管理工具变得非常丰富,有nvm、nvs、fnm还有volta等,比如Node.js官网就展示了不同工具的使用方法。
nvm虽然很经典,但是也有不足,比如不支持在不同项目自动切换版本,也不支持同时支持不同版本,如果两个项目使用不同Node版本需要进行手动切换,在新出的Node版本工具里,有两个推荐的工具:fnm和volta,这两个都是Rust语言开发的,效率非常高,fnm还是Node.js官网推荐的方法。
那选择fnm还是选择volta呢?我的选择是volta。
- Volta可以自动安装所需的 Node.js 版本,而不需要手动管理。
- volta比fnm安装简单,fnm安装还需要修改环境变量,且在Windows系统还得修改PowerShell文件,而volta一个命令就完全安装好了,不需要再去进行任何手动设置。
- Volta跨平台,支持Windows、Linux、MacOS、Unix,不需要手动配置环境变量。
macOS系统和Linux系统安装命令:
curl https://get.volta.sh | bash
Windows系统安装命令:
winget install Volta.Volta
Volta安装node版本方法(如18的版本,也可以指定具体的小版本号如18.20.5):
volta install node@18
- volta不需要在项目下手动编辑.node-version版本环境变量文件,使用 volta pin node@<版本号>就可以自动修改版本配置字段到package.json,然后就自动管理Node版本了,无须手动处理任何操作,就是说这个项目只要在Volta环境下,再次打开项目也不需要进行版本切换的操作,甚至在其它装了Volta环境的电脑上也不需要手动操作,适合Git协作同步项目,一切都会由Volta进行管理,也不需要修改代码编辑器的插件或者配置项。
volta在项目目录下执行命令来使用指定版本(如使用Nodejs18):
volta pin node@18
- volta支持node、npm/yarn/pnpm的工具管理和执行。
- 开发工具支持,Webstorm、Vscode、终端等都支持,自动识别当前Node.js项目的版本,不需要特定配置和处理。
本来在Nodejs官网官方的下载界面只展示fnm没有展示Volta以为fnm更好,其实亲自使用下来,Volta更符合我的需求,也更简单方便。
当然Volta也有缺点,Volta安装的node环境不能使用node 16版本以后增加的corepack命令,不过这个命令我从来没用上过,可以忽略,如果真要使用这个命令可以使用 volta which node 命令查看安装位置,进入安装位置可以看到corepack命令,在那执行命令也行。
猜你喜欢
- 2025-04-07 Typescript 开发工具 Vscode 自动 编译.
- 2025-04-07 vscode 搭建远程开发环境(vscode远程window开发)
- 2025-04-07 Node.js学习笔记:入门安装及部署(node.js的安装教程)
- 2025-04-07 three.js 入门(threejs入门教程)
- 2025-04-07 LocatorJS:点击DOM一键定位IDE源码,支持Vue、React等主流框架
- 2025-04-07 在vs code中对js代码混淆加密(vs code javascript)
- 2025-04-07 代码示例:Python 调用并执行 JS(python 调用python)
- 2025-04-07 js基础学习(js入门教程)
- 2025-04-07 移动端自动化 AutoJS 快速入门指南(上)
- 2025-04-07 如何使用VSCode调试JS?(vscode使用js 教程)
- 最近发表
- 标签列表
-
- 向日葵无法连接服务器 (32)
- git.exe (33)
- vscode更新 (34)
- dev c (33)
- git ignore命令 (32)
- gitlab提交代码步骤 (37)
- java update (36)
- vue debug (34)
- vue blur (32)
- vscode导入vue项目 (33)
- vue chart (32)
- vue cms (32)
- 大雅数据库 (34)
- 技术迭代 (37)
- 同一局域网 (33)
- github拒绝连接 (33)
- vscode php插件 (32)
- vue注释快捷键 (32)
- linux ssr (33)
- 微端服务器 (35)
- 导航猫 (32)
- 获取当前时间年月日 (33)
- stp软件 (33)
- http下载文件 (33)
- linux bt下载 (33)