node版本管理
了解 nvm-windows
Microsoft / npm /Google 为Windows推荐 了 Node.js 版本管理器。原始nvm是一个完全独立的项目,仅适用于 Mac/Linux。该项目使用完全不同的理念,而不仅仅是 nvm 的克隆。详细信息列在为什么另一个版本管理器?有什么大的区别?。
安装 nvm-windows
卸载任何预先存在的节点安装
在安装 NVM for Windows 之前卸载任何现有的 Node.js 版本(否则你会有冲突的版本)。%ProgramFiles%\nodejs
删除任何可能保留的现有 Node.js 安装目录。(有的用户可能自定义路径了,找到 自己的 Node.js 安装目录,删除即可)
备份任何全局npmrc
配置
例如%AppData%\npm\etc\npmrc
。或者,将设置复制到用户 config %UserProfile%\.npmrc
。删除现有的 npm 安装位置(例如%AppData%\npm
)以防止全局模块冲突。
最后安装
- 下载安装包,选择 nvm-setup.zip,下载并解压自己想存放的文件路径。
- 双击 nvm-setup.exe,进入安装界面,选择 nvm-windows 的安装路径,这里我给的是
E:\AppData\Roaming\nvm
(可以不用提前创建好文件路径)。 - 点击下一步,是存放 nodejs 的路径,这里我给的是
E:\DevTools\nodejs
(必须提前创建好文件路径,否则,后面nvm use <version>
时出现 exit status 错误)。 - 下一步, install 等待安装完成即可。
! 注意
安装 nvm-windows 时,选择存放 nodejs 的路径时,必须提前创建好想要存放它的路径,这里跟以往我们安装其他应用不一样,可能是 nvm-windows 的开发者忽略了这一点,“选择文件路径的同时会自动出创建对应的文件路径”。
对于选择存放 nodejs 的路径,是否可以如默认的一样
C:\Program Files\nodejs
,该路径名含有空格,可以尝试一下,后面nvm use <version>
时,是否会报错提示 exit status 及乱码。因为安装 nvm-windows 的同时,它会根据你所选的 2 个路径(一个是 nvm, 一个是 nodejs),默认配置好环境变量(包含用户环境变量和系统环境变量),所以,选择 nodejs 的有空格的路径时,是没有问题的,关键是必须提前创建好 nodejs 对应的存放路径。
nvm 用法
NVM for Windows 是一个命令行工具。只需nvm
在控制台中输入帮助即可。基本命令是:
- **
nvm arch [32|64]
**:显示节点是在 32 位还是 64 位模式下运行。指定 32 或 64 以覆盖默认架构。 - **
nvm current
**:显示活动版本。 - **
nvm install <version> [arch]
**:版本可以是特定版本,“latest”表示最新的当前版本,或“lts”表示最新的 LTS 版本。可选地指定是安装 32 位还是 64 位版本(默认为系统架构)。将 [arch] 设置为“all”以安装 32 位和 64 位版本。添加--insecure
到此命令的末尾以绕过远程下载服务器的 SSL 验证。 - **
nvm list [available]
**:列出 node.js 安装。在末尾键入available
以显示可供下载的版本列表。 nvm on
: 启用 node.js 版本管理。- **
nvm off
**:禁用 node.js 版本管理(不卸载任何东西)。 - **
nvm proxy [url]
**:设置用于下载的代理。留空[url]
以查看当前代理。设置[url]
为“无”以删除代理。 - **
nvm uninstall <version>
**:卸载特定版本。 - **
nvm use <version> [arch]
*:切换到使用指定的版本。可选择使用latest
,lts
或newest
.newest
是最新安装*的版本。可选择指定 32/64 位架构。nvm use <arch>
将继续使用所选版本,但切换到 32/64 位模式。有关use
在特定目录中使用(或使用.nvmrc
)的信息,请参阅问题 #16。 nvm root <path>
: 设置 nvm 应该存放不同版本的 node.js 的目录。如果<path>
未设置,将显示当前根目录。- **
nvm version
**:显示当前运行的 NVM for Windows 版本。 - **
nvm node_mirror <node_mirror_url>
*:设置节点镜像。国内的人可以使用https://npmmirror.com/mirrors/node/* - **
nvm npm_mirror <npm_mirror_url>
*:设置 npm 镜像。中国的人可以使用https://npmmirror.com/mirrors/npm/*
实践
如果在使用nvm use <version>
时,出现报错提示,“exit status 乱码”,那就得问问自己,nodejs 的真实存放路径是否有提前创建好;执行nvm use <version>
的命令环境是否通过管理员权限打开的。另外,网友给出, nodejs 存放路径包含空格或中文了。总之,你们尽可一一尝试,改正即可。
最后,如果打开 vscode 的命令行,输入 nvm、node、npm 等对应命令,是无效的,这时,重启电脑,命令即可生效,而不是重启 vscode。