使用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 包

github.com/coreybutler... 选最新版本进入即可

2. 安装nvm-setup.exe

上面nvm和nodejs默认安装地址都是C盘,我们最好换成其他的盘,我是换成D盘。

并且注意安装路径的文件夹名称不要出现中文,空格等,否则后期npm使用的时候会出现符号格式不正确问题。

3. 配置路径和下载镜像

安装完 nvm 后来配置一下下载源 找到nvm安装路径 -> 找到setting.json文件 -> 将下面文本覆盖上去

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 下载镜像

4. 检查安装是否完成

win+R,调用cmd,输入nvm,如下图则表示安装成功


四、 使用nvm安装node

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

  1. 安装指定node版本
shell 复制代码
nvm install 20.13.1 
  1. 安装完成后可以分别输入命令行 node -vnpm -v,检验是否安装成功
  1. nvm list 查看已安装nodejs版本, * 号表示正在使用
  1. 删除某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. 新建目录

  1. 为了防止nvm切换node版本之后全局安装的包无法使用 ,我们直接在nvm目录下创建"node_cache""node_global"文件夹
  1. 打开命令行工具, 输入下面两句指令
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

2. 设置环境变量

我的电脑右键 -> 属性 -> 高级系统设置 -> 系统属性(高级) -> 环境变量

如果环境变量未正确配置,输入node -v 会报错,系统将无法正确识别"node"命令。

需要我们设置的地方有两个:

  1. 系统环境变量 新增NODE_PATH变量
  2. 用户变量 修改path变量
  1. 在[系统环境变量]新建环境变量NODE_PATH值为D:\nvm\node_global\node_modules
  1. 修改[用户变量]中的path变量
  1. 另外, 在下载完nvm后, 系统环境变量和用户环境变量会默认配置好NVM_HOMENVM_SYMLINK
  1. 点击确定后配置完成

七、测试安装全局模块

在cmd窗口中输入以下指令全局安装http-server模块, 安装成功就表示环境变量配置成功

sheel 复制代码
npm install http-server -g

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

  • 当前node版本运行 http-server
  • 切换版本后重新运行
  • 测试完成,可以看到切换node版本后全局模块依然可以使用
相关推荐
黄毛火烧雪下7 小时前
Node.js 自动替换脚本工具:一键完成多项目批量修改与资源替换
node.js·ci
kuxku8 小时前
使用 SSE 与 Streamdown 实现 Markdown 流式渲染
前端·javascript·node.js
书中自有妍如玉1 天前
Node.Js Express Sqlite3 接口开发
node.js·express
三十_A1 天前
【无标题】
前端·后端·node.js
书中自有妍如玉1 天前
Node.Js 实现模板生成Word、Word转Pdf文件、Excel生成、上传和下载
pdf·node.js·word
咚咚咚小柒1 天前
【前端】Webpack相关(长期更新)
前端·javascript·webpack·前端框架·node.js·vue·scss
诸葛韩信1 天前
Webpack与Vite的常用配置及主要差异分析
前端·webpack·node.js
showmethetime2 天前
使用 Node.js 和 Express 构建 RESTful API
node.js·restful·express
老友@2 天前
Docker 部署 Node.js + Playwright 项目,实现浏览器截图、打印和下载
docker·容器·node.js·playwright
前端摸鱼匠2 天前
Vue 3 事件修饰符全解析:从 .stop 到 .passive,彻底掌握前端交互的艺术
前端·vue.js·node.js·vue·交互