写在前面
随着项目复杂度的提高,我们可能需遇到不同项目需要node的版本不一样,但是同个电脑不可能进行不断的卸载重装,所以为了应对不同node版本的需求,NVM应运而生:
nvm is a version manager for node.js, designed to be installed per-user, and invoked per-shell.
nvm是什么呢,其实就是一个Node.js的管理工具,可以在通过安装不同版本node后,切换特定版本node进行开发的工具。
安装
一般推荐github直接下载nvm-setup.zip安装包,github下载地址
注意事项:
1、安装nvm前一定要把原本的node删除干净,否则会在安装之后造成node版本冲突,导致安装无效。
卸载步骤:
(1)在【卸载程序】中卸载程序和功能(控制面板)
(2)去c盘中找到这些文件并删除
C:\Program Files\Nodejs
C:\Users{User}\AppData\Roaming\npm
C:\Users{User}\AppData\Roaming\npm-cache
(3)检查环境变量确保没有Nodejs或npm存在
(4)如果你要确保完全卸载干净的话,可以重启一下。
2、安装nvm途中,设置node路径地址时,路径不能包含中文/空格;
3、安装成功后,执行命令窗口的时候,使用管理员身份,进行命令输入与执行,才能保证nvm的顺利使用。
步骤1:在环境变量中查看是否已经存在nvm的环境变量
点击nvm-setup.exe安装成功之后,nvm会自动配好环境变量,使得在电脑中的任何目录下都可以使用nvm命令。
// NVM_SYMLINK 是nodejs的目录,一般为xxx/xx/nodejs
// NVM_HOME 是nvm的主目录,一般为xxx/nvm
注意nvm不一定能自动配置正确,要检查下settings和环境变量;
nvm成功安装node后无法use, 且node不是个命令极有可能是因为这个。
步骤二:配置node和npm的镜像地址 在nvm安装目录(一般在C:\Users\用户\AppData\Roaming\nvm)下,找到 setting.txt 文件加上如下两行:
node_mirror: npm.taobao.org/mirrors/nod…
npm_mirror: npm.taobao.org/mirrors/npm…
步骤三:nvm安装NodeJs
nvm install 需要的版本
例如nvm install 19.1.0
nvm的使用
最常用的是下面两个指令
1、nvm list:安装完成后可以用nvm list查看安装node版本
带 * 的是当前正在使用的版本
ps:可以使用npm install latest安装最新文档版的nodeJS
2、nvm use :版本号可以切换不同版本的node(注意要在管理员模式下)
例如nvm use 14.21.1
切换完版本后就可以使用node自带的一切指令了,包括使用npm安装各种依赖!!
3、其他指令汇总:
nvm arch: 显示node是运行在32位还是64位模式。
nvm on :开启nodejs版本管理
nvm off :关闭nodejs版本管理
nvm proxy [url] :设置下载代理。不加可选参数url,显示当前代理。将url设置为none则移除代理。
nvm root [path] :设置存储不同版本node的目录。如果未设置,默认使用当前目录。
nvm version :显示nvm版本。version可简化为v。
常见问题记录:
1、安装完nvm后,无论安装什么版本的node都无效,都用同一个版本的node(细心点看会是之前的Node版本)
原因:在安装nvm之前没有把node卸载干净
解决:只能卸载掉nvm与之前的node版本重新来过!
2、‘node’ is not recognized as an internal or external command, operable program or batch file
原因:
(1)安装nvm之前没有将node卸载干净
解决:重装nvm
(2)cmd时没有开启管理员模式
解决:以administrator开启cmd
(3)环境变量不存在
解决:查看环境变量,假如没有则进行手动配置环境变量,配置完成并重启无效后需要卸载重装
(4)nvm可能是关闭着的
解决:可以尝试运行一下指令:npm on 或者 npm off 再 npm on
3、node/npm安装失败:环境变量路径有问题
找到nvm的安装路径,打开settings.text,配置好路径 root:nvm的路径, path:nodejs的路径
root: D:\software\nvm
path: D:\software\nodejs
proxy: none
同时环境变量如上文一样配置,若nvm文件夹下面没有nodejs文件夹就手动创建一个;
4、安装node时连接失败,镜像使用的问题:
5、安装node后,npm非指定命令错误: 可能原因是公司镜像中的node包中无npm包,这个时候就需要手动去官网/公司软件下载处手动下载node到nvm中,再改成文件夹名称为 v[node-version] 形式