nvm安装、管理node多版本以及配置环境变量【保姆级教程】

引言

不同的项目运行时可能需要不同的node版本才可以运行,由于来回进行卸载不同版本的node比较麻烦;所以需要使用node工程多版本管理。
本人在配置时,通过网络搜索教程,由于文章时间过老,或者文章的互相拷贝导致配置时出现许多小问题,但最后也是配置成功了,想写下此文章帮助小伙伴们排除错误,节省各位宝贵的时间,如有问题欢迎留言讨论~

注意 :安装nvm时不能安装任何node版本(如存在请删除后再安装nvm),再检查环境变量,如果还有node.js相关也删掉,保证系统无任何node.js 残留。

卸载完之后cmd命令行输入 node -v 查看是否还能查到node信息,无的话表示删除干净。

安装前准备

  • 若已安装Node.js,需彻底卸载避免冲突

1.控制面板卸载:进入控制面板 → 卸载Node.js程序。

2.删除残留文件:

  • 删除安装目录:C:\Program Files\nodejs(或自定义路径)
  • 删除用户目录下的.npmrc文件:C:\Users\用户名
  • 清理以下目录(若存在):
bash 复制代码
C:\Program Files (x86)\Nodejs  
C:\Users\用户名\AppData\Roaming\npm  
C:\Users\用户名\AppData\Roaming\npm-cache

3.检查卸载结果:

bash 复制代码
node -v  # 若提示"找不到命令"则表示卸载成功

一、Nvm的下载与安装

1.1 Nvm下载

很多博主给的是GitHub上的下载地址,但是在国内访问速度非常慢,大家可以通过本人的网盘地址下载。点击下载Nvm,提取码:B66S

1.2 Nvm的安装与配置

1.安装准备(示例:本人在D盘下创建了Nvm文件夹,并在该文件夹下创建了nodejs文件夹)

2.双击运行 nvm-setup.exe

3.选择nvm安装路径(示例:D:\nvm,避免中文和空格)

4.设置Node.js存储路径(示例:D:\nvm\nodejs)

5.配置镜像加速(避免下载失败)

打开nvm安装目录下的 settings.txt 文件,添加以下内容:

bash 复制代码
node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/

(旧版淘宝镜像 registry.npm.taobao.org 证书已过期,需替换为该域名)

6.环境变量配置

1.右击此电脑点击属性

2.选择高级系统设置

3.点击环境变量

4.查看环境变量是否配置(默认nvm安装成功后,自动生成)

1.3 验证Nvm是否安装成功

完成安装后,以管理员身份打开CMD,输入 nvm -v 验证是否成功

二、使用Nvm安装node

2.1 相关命令

bash 复制代码
nvm list available    # 查看可下载的node版本
nvm install v    #下载node指定版本 v(版本号) 如:nvm install 20.11.1
nvm list    #查看已下载的node版本
nvm use v    #使用node指定版本 注:use指令需要使用管理员权限
nvm uninstall v #卸载指定版本 如:nvm uninstall 20.11.1

2.2使用Nvm安装node

1.win + R,调用cmd

安装完成后开始插入nodejs首先使用 nvm list available 查询可插入版本号,LST表示可插入稳定版本。【如未指定版本,建议安装LTS下的版本】

2.安装指定node.js版本(这里根据需求选择)
点我查看node相关版本号

bash 复制代码
nvm install 18.16.0 #根据自己的需求选择版本号

3.安装完成后使用nvm use v命令使用安装的node版本

可以分别输入命令行 node -v 和 npm -v,检验node.js以及对应npm是否安装成功

4.nvm list 查看当前已安装的node.js版本,带*号的是正在使用的

5.安装成功后的文件夹显示

***马上成功了,请坚持一下!***

2.3 修改npm默认镜像源为淘宝镜像

修改npm镜像源为淘宝镜像,加快npm包的下载速度,减少发生连接错误和超时的概率。

1.在命令提示窗口运行下面命令

bash 复制代码
npm config set registry https://registry.npmmirror.com

2.检查是否设置淘宝镜像成功

bash 复制代码
npm config get registry

三、配置node环境变量

3.1创建目录

在Node.js存储路径下新建 node_global 和 node_cache 文件夹

3.2 设置npm全局路径:

bash 复制代码
npm config set prefix "D:\nvm\nodejs\node_global"
npm config set cache "D:\nvm\nodejs\node_cache"

3.3 配置环境变量path

  1. 编辑用户变量中的Path

注意:【用户变量】中的path变量,%NVM_HOME% 和 %NVM_SYMLINK% 理论上是nvm安装成功后自动生成的。> 如果有C:UsershuaAppDataRoaming npm,则将其修改为D:\NVM\node_global,如果没有就自己新建D:\NVM\node_global,总之保证有以上内容。

  1. 再设置系统变量 --- Path变量的设置和用户变量中一致

3.4 添加系统变量:

  • 新建 NODE_HOME → 值:D:\nvm\nodejs

    D:\tools\nodejs\node_global\node_modules 就是上面创建的全局模块安装路径文件夹
    点击三次确定,完成环境变量配置!!!
    点击三次确定,完成环境变量配置!!!
    点击三次确定,完成环境变量配置!!!

四、测试安装全局模块(测试环境变量配置)

  • 测试是否环境变量是否配置成功,在cmd窗口中输入以下指定全局安装express模块
bash 复制代码
npm install -g express
  • 安装成功的话表示环境变量配置成功

五、安装Vue

1.确保配置了淘宝的镜像源,可以用npm config get registry进行测试

2.安装vue、vue-cli、webpack

bash 复制代码
npm install vue -g
npm install vue-cli -g
npm install webpack -g

3.检查Vue是否安装成功

使用vue -V命令

返回版本号 则说明安装成功,注意V是大写,小写不成功

六、扩展:使用 nrm 来管理 npm 源

6.1 nrm的概念

nrm 允许开发者通过命令行工具轻松管理多个 npm 镜像源(如淘宝、腾讯云、华为云等),并支持一键切换,无需手动修改 npm config。

提供源测速功能(nrm test),帮助选择响应最快的镜像。
我们可以使用 nrm 来管理 npm 源,特别是当需要在不同的网络环境之间切换时,它可以提供更好的包管理体验。一般国内就是用淘宝源,所以这部分了解即可

6.2 使用 nrm 来管理 npm 源

1.全局安装(需 Node.js 环境)

bash 复制代码
npm install -g nrm

2.核心操作命令

bash 复制代码
nrm ls #查看所有源(带 * 为当前使用源)
nrm use taobao  # 切换到淘宝源(推荐国内使用)
nrm test          # 测试所有源延迟
nrm test taobao   # 仅测试淘宝源
nrm add my-registry http://私有源地址  # 示例:企业私有源
nrm del my-registry  # 删除指定源
nrm current #当前正在使用的 npm 源
相关推荐
Rabitebla8 小时前
【Linux 底层原理】进程(十):进程等待详解---从僵尸进程到 wait、waitpid 与 status
linux·c++·笔记·学习·visual studio
小lu飞9 小时前
2026小红书小工具怎么制作:纯前端 ZIP 打包、沙箱限制与笔记挂载流程
前端·笔记·ai·ai编程
无心水13 小时前
24、系统架构师论文写作专题 核心考点与学习笔记
笔记·学习·系统架构·架构师·安全架构·软考架构师·软考系统架构设计师
蒸蒸yyyyzwd13 小时前
邓明 Agent 系统面试-意图识别学习笔记
笔记·学习
Zhao-Jichao16 小时前
AI Prompting for Everyone 课程笔记 - P21 总结 Conclusion
人工智能·笔记
欢欢李16 小时前
【LTE L3 笔记 05】LTE同步信号
笔记·无线通信·物理层·lte·空口协议
La Pulga18 小时前
【FreeRTOS源码学习笔记】空闲任务与阻塞延时
笔记·mcu·学习·嵌入式·freertos·实时操作系统
蒸蒸yyyyzwd18 小时前
秋招学习笔记 day106
笔记·学习
小李不想当小白19 小时前
WDG看门狗(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
欢欢李20 小时前
【LTE L3 笔记 04】LTE帧结构
笔记·无线通信·物理层·lte·空口协议