使用nvm管理node多版本(安装、卸载nvm,配置环境变量,更换npm淘宝镜像)

前言
基于 windows环境 使用nvm安装多版本nodejs, 此文章作为记录,并对
参考文章 做些补充
注意: 如果电脑上已经安装了任意node版本,需要将其相关文件及环境变量清理干净后再安装nvm, 保证电脑内没有任何nodejs的残留
一、卸载node
如果已经安装了node,那么在安装nvm之前,需要先卸载node,如果没有安装可以直接跳过这一步到下一步了。
删除前可查当前使用的node版本,方便后续决定使用哪个版本的node。

控制面板 -> 卸载程序 -> 卸载nodejs

为了确保彻底删除node,看下node安装目录中还有没有node文件夹,有的话一起删除。
删除以下文件夹(如果存在的话)

C:\Program Files (x86)\Nodejs
C:\Program Files\Nodejs
C:\Users{User}\AppData\Roaming\npm
C:\Users{User}\AppData\Roaming\npm-cache
删除C:\Users\用户名 下的 .npmrc文件以及 .yarnrc 文件
环境变量中npm、node的所有相关统统删掉

二、nvm是什么?
nvm(node.js version management),是一个nodejs的版本管理工具。nvm和n都是node.js版本管理工具,为了解决node.js 各种版本存在不兼容现象 可以通过它可以安装和切换不同版本的node.js。【可同时在一个环境中安装多个node.js版本(和配套的npm)】

三、nvm安装
1.官网下载 nvm 包
https://github.com/coreybutler/nvm-windows/releases
选最新版本进入即可

  1. 安装nvm-setup.exe

上面nvm和nodejs默认安装地址都是C盘,我们最好换成其他的盘,我是换成D盘。
并且注意安装路径的文件夹名称不要出现中文,空格等,否则后期npm使用的时候会出现符号格式不正确问题。

  1. 配置路径和下载镜像
    安装完 nvm 后来配置一下下载源
    找到nvm安装路径 -> 找到setting.txt文件 -> 将下面文本覆盖上去
    txt 代码解读复制代码root: D:\nvm
    path: D:\nodejs
    node_mirror: https://npmmirror.com/mirrors/node/
    npm_mirror: https://npmmirror.com/mirrors/npm/

第一行是 nvm 安装路径
第二行是 nodejs 路径
第三行是 node 下载镜像
第四行是 npm 下载镜像

  1. 检查安装是否完成
    win+R,调用cmd,输入nvm,如下图则表示安装成功

四、 使用nvm安装node
管理员身份运行终端, 先查询可使用版本号, 终端输入nvm list available, LST代表稳定版本

安装指定node版本

shell 代码解读复制代码nvm install 20.13.1

安装完成后输入use命令指定使用版本

shell 代码解读复制代码nvm use 20.13.1

use完成后可以分别输入命令行 node -v 和 npm -v,检验是否安装成功

nvm list 查看已安装nodejs版本, * 号表示正在使用

删除某nodejs版本

shell 代码解读复制代码nvm uninstall node版本号 //例如:nvm uninstall 16.14.0)即可删除对应版本

五、修改npm默认镜像源为淘宝镜像
shell 代码解读复制代码npm config set registry https://registry.npmmirror.com/

检查是否设置成功, 应该返回 registry.npmmirror.com/
shell 代码解读复制代码npm config get registry

六、环境变量配置

  1. 新建目录

为了防止nvm切换node版本之后全局安装的包无法使用,我们直接在nvm目录下创建"node_cache"和"node_global"文件夹

打开命令行工具, 输入下面两句指令

shell 代码解读复制代码npm config set prefix "D:\nvm\node_global"
npm config set cache "D:\nvm\node_cache"

想查看是否设置成功使用
shell 代码解读复制代码npm config get prefix
npm config get cache

  1. 设置环境变量
    我的电脑右键 -> 属性 -> 高级系统设置 -> 系统属性(高级) -> 环境变量
    如果环境变量未正确配置,输入node -v 会报错,系统将无法正确识别"node"命令。
    需要我们设置的地方有两个:

系统环境变量新增NODE_PATH变量
用户变量修改path变量

在[系统环境变量]新建环境变量NODE_PATH值为D:\nvm\node_global\node_modules

修改[用户变量]中的path变量

另外, 在下载完nvm后, 系统环境变量和用户环境变量会默认配置好NVM_HOME和NVM_SYMLINK

点击确定后配置完成

七、测试安装全局模块
在cmd窗口中输入以下指令全局安装http-server模块, 安装成功就表示环境变量配置成功
sheel 代码解读复制代码npm install http-server -g

八、测试切换node版本全局模块是否存在

当前node版本运行 http-server

切换版本后重新运行

测试完成,可以看到切换node版本后全局模块依然可以使用