背景
新旧项目需要使用到不同的 node 版本进行开发, Mac 下可以使用 nvm 工具管理 node ,如果需要管理 Windows 下的 node,推荐使用 nvm-windows 或 nvmw;不过,nvm-windows 并不是 nvm 的简单移植,他们也没有任何关系。
前置工作
在安装 nvm-windows 之前,如果原本电脑中已经安装过了 node,需要先卸载并删除干净,否则 nvm-windows 可能会不能正常使用。
下载 nvm-windows
nvm-windows下载地址:https://github.com/coreybutler/nvm-windows/releases 找到最新版进行下,目前我下载的版本是1.1.9(建议安装1.1.7版本,因为1.1.9版本在使用use命令时发现有问题),点击下图所示位置的链接下载安装包
卸载node
原本安装过node的需要先卸载,没有的可以跳过该步骤
-
运行node卸载程序进行卸载 -
重启电脑(用于关闭与node相关的进程) -
删除残留文件(可能只有部分目录是存在的) (1)C:\Program Files (x86)\nodejs (2)C:\Program Files\nodejs (3)C:\Users\{User}\AppData\Roaming\npm(或%appdata%\npm) (4)C:\Users\{User}\AppData\Roaming\npm-cache(或%appdata%\npm-cache) 注:3、4路径中的“Users”可能在你的电脑中显示为“用户”;{User} 表示你电脑的用户名;AppData 是个隐藏的文件夹; -
删除环境变量中的引用 右击我的电脑选择属性,找到高级系统设置,进入到环境变量,然后删除Node或npm的引用(使用第1步的卸载方法,这里也是已经删了的,我在这里没有找到相关的引用) -
再次重启电脑
安装 nvm-windows
-
解压缩上面下载来的安装包,然后运行进行安装 -
选择安装路径 安装路径不要带空格,可能会出现问题,解决方法可以参考https://github.com/coreybutler/nvm-windows/issues/41 -
选择node安装位置 -
点击下一步进行安装
使用 nvm-windows
-
测试是否安装成功 在命令行输入nvm ,运行看到以下内容,说明安装成功了 -
配置淘宝镜像源 命令行中输入一下命令进行配置 nvm node_mirror https://npmmirror.com/mirrors/node/ nvm npm_mirror https://npmmirror.com/mirrors/npm/ 或者在nvm的安装目录,打开settings.txt文件进行配置 -
下载node 使用命令 nvm install 版本号 可安装指定版本的node,例如想安装 14.18.3 版本的话,可以运行nvm install 14.18.3 -
查询看看已安装的nodejs版本 使用命令nvm list -
使用指定版本的node nvm use 版本号 切换到指定版本,我这里是运行报错了,原因可能是安装的是1.1.9版本的问题(据说1.1.7没有这个问题),这个乱码转译过来是说权限不够的问题,参考nvm use 乱码和解决办法,解决方法看下面 解决方法:使用管理权限来运行命令行工具(cmd) -
验证node版本 下面是正常使用的状态,使用node -v 命令能看到版本号
常用命令
nvm ls 查看已经安装的node版本nvm install 版本号 可安装指定版本的nodenvm use 版本号 切换到指定版本nvm uninstall 版本号 卸载指定版本nvm list available 查看可安装的node版本
其他可能会遇到的问题
Q: nvm install 指定版本的node,并切换后,使用node指令正常,但是使用npm指令会报错,且报错根据node 版本会不同。 A: 打开nvm安装的node目录,看看对应的版本里面的node_modules文件夹里有没有npm,没有找到说明没有安装上。你可以卸载当前版本,重新安装,有时可能要重新安装几次才成功。或者自己去下载对应的npm放到node_modules里面,参考 使用nvm切换node版本,npm 未安装的问题
Q:使用 git-bash 时,在 / 目录使用 nvm use xxx 是没有效果的 A:要进入到具体的盘符下面,才能让这条命令执行
本文参考资料
(以下排序不分先后)
|