nvm(Node Version Manager)即 Node 版本管理器,是一个用于在系统中轻松安装、管理和切换不同版本 Node.js 的工具。
在实际开发中,不同的项目可能基于不同版本的 Node.js 构建。比如一个旧项目依赖于 Node.js 12.x 版本的特定功能或特性,而新项目采用了 Node.js 20.x 的新特性。使用 NVM 可以在不同项目间自由、快速地切换 Node.js 版本,无需反复卸载和重新安装不同版本的 Node.js,极大地提高了开发效率。
一、nvm安装
安装nvm之前需先卸载当前已经安装的nodejs
-
在 Linux 和 macOS 系统上:可以通过 curl 或 wget 命令来安装。例如,使用 curl 安装的命令为:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
,安装完成后,需要重新打开终端或者执行source ~/.bashrc
(如果使用的是 zsh 则执行source ~/.zshrc
) 使 nvm 生效。 -
在 Windows 系统上:可以从 nvm-windows 的官方仓库(https://github.com/coreybutler/nvm-windows)下载安装程序,然后按照安装向导进行安装。
二、nvm常用命令
- 安装指定版本的 Node.js:例如安装 Node.js 18.12.1 版本,命令为
nvm install 18.12.1
。 - 卸载nodejs:
nvm uninstall <version>
- 查看已安装的 Node.js:使用命令
nvm list
,会列出所有已安装的 Node.js 版本,其中当前使用的版本会有特殊标识。 - 切换 Node.js 版本:例如要切换到 18.12.1 版本,命令为
nvm use 18.12.1
。 - 设置默认版本:将某个版本设置为默认版本,命令为
nvm alias default <version>
,其中<version>
是你想要设置为默认的 Node.js 版本号。
三、nvm所有指令
1、安装与卸载相关
指令 | 适用系统 | 功能说明 |
---|---|---|
nvm install <version> | Linux、macOS、Windows | 安装指定版本的 Node.js,如 nvm install 18.16.0 会安装 Node.js 18.16.0 版本。若指定 --lts ,则安装最新的长期支持(LTS)版本。 |
nvm uninstall <version> | Linux、macOS、Windows | 卸载指定版本的 Node.js,例如 nvm uninstall 14.17.6 会卸载该版本。 |
2、版本查看与选择相关
指令 | 适用系统 | 功能说明 |
---|---|---|
nvm list 或 nvm ls | Linux、macOS、Windows | 列出所有已安装的 Node.js 版本,当前正在使用的版本会有特殊标识(通常带有 * 号)。 |
nvm list-remote 或 nvm ls-remote | Linux、macOS、Windows | 列出所有可安装的 Node.js 远程版本,包括稳定版、LTS 版和开发版等。 |
nvm use <version> | Linux、macOS、Windows | 切换到指定版本的 Node.js 进行使用,如 nvm use 16.13.2 会将当前使用的 Node.js 版本切换为 16.13.2。若指定 --lts ,则切换到最新的 LTS 版本。 |
nvm current | Linux、macOS、Windows | 显示当前正在使用的 Node.js 版本。 |
3、版本别名与默认设置相关
指令 | 适用系统 | 功能说明 |
---|---|---|
nvm alias <name> <version> | Linux、macOS、Windows | 为指定的 Node.js 版本创建别名,例如 nvm alias my-node 18.12.0 会为 18.12.0 版本创建一个名为 my-node 的别名。 |
nvm alias default <version> | Linux、macOS、Windows | 将指定版本设置为默认版本,每次打开新的终端会话时会自动使用该版本。 |
nvm unalias <name> | Linux、macOS、Windows | 删除之前创建的别名,如 nvm unalias my-node 会删除名为 my-node 的别名。 |
4、其他指令
指令 | 适用系统 | 功能说明 |
---|---|---|
nvm --version | Linux、macOS、Windows | 显示当前安装的 NVM 版本。 |
nvm --help | Linux、macOS、Windows | 显示 NVM 的帮助信息,列出所有可用的指令及其简要说明。 |
nvm reinstall-packages <version> | Linux、macOS、Windows | 在安装新的 Node.js 版本后,将之前版本中全局安装的 npm 包重新安装到新的版本中。 |
四、nodejs 和 vue版本关系
Node.js 和 Vue 版本之间并没有严格的固定对应关系,但为了确保项目的稳定性、兼容性和性能,不同版本的 Vue 在使用时对 Node.js 版本有一定的要求和推荐
Vue 2.x 与 Node.js 版本关系
-
最低要求:Vue 2.x 官方文档指出,其最低支持 Node.js 8.9 版本,但这个版本已经较为陈旧,且早已过了官方维护期,存在一定的安全风险。
-
推荐版本:建议使用 Node.js 10.x 及以上的长期支持(LTS)版本。比如 Node.js 12.x、14.x、16.x 等。这些 LTS 版本经过了充分的测试和优化,具有较好的稳定性和性能,能为 Vue 2.x 项目的开发和运行提供良好的支持。例如在使用 Vue CLI 创建 Vue 2.x 项目时,使用较新的 Node.js LTS 版本可以避免很多不必要的兼容性问题。
Vue 3.x 与 Node.js 版本关系
-
最低要求:Vue 3.x 要求 Node.js 版本至少为 12.0.0。因为 Vue 3 在设计和实现上使用了一些较新的 JavaScript 特性和语法,较旧的 Node.js 版本可能无法支持这些新特性。
-
推荐版本:推荐使用 Node.js 14.x 及以上的 LTS 版本,如 Node.js 16.x、18.x、20.x 等。较新的 Node.js 版本不仅能提供更好的性能和安全保障,还能更好地支持 Vue 3.x 生态系统中的一些新工具和库。例如,在使用 Vite(Vue 3 推荐的构建工具)时,较新的 Node.js 版本可以让 Vite 的启动速度更快,开发体验更流畅。