前言
在开发中,由于各项目对 Node.js 版本要求差异大。一个项目依赖特定版本,另一个项目却需要完全不同的版本环境。如何高效管理多个 Node.js 版本,成了一件麻烦事。此时,Node.js 多版本管理工具 nvm 出现,它就像管家,帮助开发者有序管理 Node.js 版本,大幅提升开发效率。
nvm 是什么?
nvm(Node Version Manager) 是一个用于管理 Node.js 版本的命令行工具。它允许开发者在同一台机器上安装和切换多个版本的 Node.js,以便于在不同的项目中使用不同的 Node.js 版本。
一、下载安装
1.3 安装 nvm 到本地
1.3.1 下载到电脑本地后,双击安装程序,如下:


1.3.2 选择同意许可协议然后下一步,如下:

1.3.3 选择
nvm的安装路径,可自定义安装路径,如下:

1.3.4 选择
Node.js的安装路径,可自定义安装路径,如下:

1.3.5 准备安装,如下:

1.3.6 完成安装,如下:

1.3.7 验证是否安装成功,以管理员身份打开命令窗口,输入
nvm -v,如下:

至此,nvm 安装结束。
二、nvm 切换镜像源
nvm 默认官方源多在国外,受服务器位置、带宽及网络状况影响,易出现下载速度慢甚至失败的情况。同时,部分地区存在网络限制,无法访问官方源。切换为国内镜像源,可显著提升下载速度,绕过网络阻碍,提高下载成功率,还能节省成本与资源。
2.1 以管理员身份打开命令窗口,输入
nvm root,可查看nvm的具体安装路径,如下:

2.2 找到
setting.txt文件并打开,如下:

2.3 复制以下代码,粘贴至
setting.txt文件中,最后保存即可完成nvm源切换,如下:
node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/

三、nvm 常用命令
3.1 安装与卸载相关
nvm install <version>
-
含义
安装指定版本的Node.js。 可以是具体的版本号,如18.16.0,也可以是特定标识,像latest(安装最新稳定版)、lts(安装长期支持版)。 -
栗子
nvm install 16.19.1会安装Node.js 16.19.1版本。
nvm uninstall <version>
-
含义
卸载指定版本的Node.js。 -
栗子
nvm uninstall 16.19.1会将已安装的Node.js 16.19.1版本卸载。
3.2 版本查看与管理相关
nvm list或者nvm ls
-
含义
列出当前系统中已安装的所有Node.js版本,当前正在使用的版本会有特殊标识。 -
栗子
执行该命令后,当前系统中已安装的所有Node.js版本列表,如v14.21.3、v12.22.12等。
nvm list available
-
含义
列出所有可下载的Node.js版本,包括稳定版、测试版等。 -
栗子
运行该命令会展示一系列可下载的版本列表,如v23.7.0、v22.13.1等。
nvm current
-
含义
显示当前正在使用的Node.js版本。 -
栗子
当前使用的是Node.js 14.21.3版本,执行该命令会输出v14.21.3。
nvm use <version>
-
含义
切换到指定版本的Node.js环境,后续在该命令行窗口中执行的Node.js相关命令都会使用此版本。 -
栗子
nvm use 12.22.12会将当前环境切换到Node.js 12.22.12版本。
3.3 环境配置与代理相关
nvm arch
-
含义
显示当前Node.js实例的架构(32位或64位)。 -
栗子
如果当前Node.js是64位版本,执行该命令会输出64-bit。
nvm proxy
-
含义
用于查看设置与代理。 -
栗子
通过nvm arch查看是否代理。
3.4 帮助与版本信息
nvm help
-
含义
显示nvm的帮助文档,列出所有可用命令及其简要说明。 -
栗子
执行该命令后会展示一系列命令及对应的功能描述。
nvm version
-
含义
显示当前安装的nvm的版本号。 -
栗子
执行后输出1.1.9这样的版本信息。

四、结语
在 Node.js 开发的多元场景下,nvm 作为一款强大的版本管理工具,极大地提升了开发效率与项目的稳定性。通过 nvm,开发者能够在同一系统中便捷地安装、切换不同版本的 Node.js,满足不同项目对特定 Node.js 版本的依赖需求。熟练掌握 nvm 的使用方法,能让大家更好地应对 Node.js 版本管理难题,为项目开发和维护带来便利,也是每一位 Node.js 开发者必备的技能。希望本文能助力大家更高效地运用 nvm,提升开发体验。



972

被折叠的 条评论
为什么被折叠?



