使用 nvm 管理 node 多版本

卸载 node

如果已经安装了 node,那么在安装 nvm 之前,需要先卸载 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 的版本管理工具。nvmnpm 都是 node.js 版本管理工具,为了解决 node.js 各种版本存在不兼容现象,可以通过它可以安装和切换不同版本的 node.js。【可同时在一个环境中安装多个 node.js 版本(和配套的 npm)】

地址:https://github.com/coreybutler/nvm-windows/releases

/images/posts/使用nvm管理node多版本/1.png
(图1)

设置 nvm 的安装位置

/images/posts/使用nvm管理node多版本/2.png
(图2)

设置 nodejs 的安装位置

/images/posts/使用nvm管理node多版本/3.png
(图3)
/images/posts/使用nvm管理node多版本/4.png
(图4)

配置路径和下载镜像

/images/posts/使用nvm管理node多版本/5.png
(图5)
1
2
3
4
root: E:\software\nvm
path: E:\software\nodejs
node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/
  • 第一行是 nvm 安装路径
  • 第二行是 nodejs 路径
  • 第三行是 node 下载镜像
  • 第四行是 npm 下载镜像

检查 nvm 是否安装完成

/images/posts/使用nvm管理node多版本/6.png
(图6)

使用 nvm 安装 node 版本

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
# 安装指定版本 node
nvm install 20.15.1

# 查看有哪些版本的 node,nvm list 也可以
nvm ls

# 切换 node
nvm use 20.15.1

# 切换 node 版本后,查看 node.js 以及对应 npm 是否安装成功
npm -v

node -v

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

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

1
npm config set registry https://registry.npmmirror.com

查看当前镜像地址,如果显示的是 https://registry.npmmirror.com 表示设置成功。

1
npm config get registry

使用 nrm 来管理 npm 源

nrm(npm registry manager):是一个用于管理和切换 npm 源的命令行工具。它允许您在不同的 npm 源之间进行切换,以加快包的下载速度,或者解决特定源无法访问的问题。nrm 提供了一组命令,可以列出可用的 npm 源、添加新源、测试源的响应速度,并切换当前使用的源。

我们可以使用 nrm 来管理 npm 源,特别是当需要在不同的网络环境之间切换时,它可以提供更好的包管理体验。

1
2
# 安装 nrm
npm install -g nrm
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# 列出可用的源:当前配置的所有可用 npm 源以及它们的名称和 URL
nrm ls

# 切换源:将当前的 npm 源切换为指定的源。可以使用源的名称或 URL 作为参数。
nrm use <registry>

# 添加源:添加一个新的 npm 源并指定其名称和 URL。
nrm add <registry> <url>

# 删除源:删除指定的 npm 源,需要提供源的名称或 URL 作为参数。
nrm del <registry>

# 测试源的速度:测试指定源的响应速度,并显示测试结果。
nrm test <registry>

# 显示当前使用的源:当前正在使用的 npm 源的名称和 URL。
nrm current

环境变量配置

设置系统变量和用户变量的作用是什么呢?

答:为了命令行安装包时,将包安装到自己设置的目录下。

配置步骤

新增俩文件夹

首先创建 "node_global""node_cache" 两个文件夹,进行全局安装的时候安装对应的库到这两个文件。

nvmnodejs 安装路径 E:\software\nodejs 新建两个文件夹命名为 "node_global""node_cache"

/images/posts/使用nvm管理node多版本/7.png
(图7)

打开 cmd 命令行工具,输入以下两句操作(两个路径就是新建上面两个文件夹的路径,主要目的是方便后面 window 机器使用方便)

1
2
npm config set prefix "E:\software\nodejs\node_global"
npm config set cache "E:\software\nodejs\node_cache"

设置环境变量

  • 1.系统环境变量新增 NODE_PATH 变量
  • 2.用户变量修改 path 变量
/images/posts/使用nvm管理node多版本/8.png
(图8)
/images/posts/使用nvm管理node多版本/9.png
(图9)

另外下载完 nvm 之后,系统环境变量和用户环境变量会默认帮我们配置好 NVM_HOMENVM_SYMLINK

/images/posts/使用nvm管理node多版本/10.png
(图10)

可以看到 NVM_HOMENVM_SYMLINK 值和我们之前配置 nvm 中的 setting.txt 文件配置的 rootpath 值相吻合。

测试安装全局模块

测试是否环境变量是否配置成功,在 cmd 窗口中输入以下指定全局安装 express 模块,安装成功的话表示环境变量配置成功。

1
npm install -g express
/images/posts/使用nvm管理node多版本/11.png
(图11)

卸载 nvm

1.先删除你当初所安装的 nvmnodejs 的文件夹。

/images/posts/使用nvm管理node多版本/12.png
(图12)

2.删除用户变量 和 系统变量中名为 NVM_HOMENVM_SYMLINK 两个变量,其他的不要改。

/images/posts/使用nvm管理node多版本/10.png
(图10)

3.删除用户变量和系统变量中 path 中的 %NVM_HOME%%NVM_SYMLINK% 两个属性,还有 E 盘中的 node_cachenode_global,其他的不要改。

/images/posts/使用nvm管理node多版本/13.png
(图13)
/images/posts/使用nvm管理node多版本/14.png
(图14)

4.删除系统变量中的 NODE_PATH

/images/posts/使用nvm管理node多版本/15.png
(图15)
[提示]
1.想要知道 nodenpm 安装位置可以使用命令行 where nodewhere npm
2.在首次使用 nvm 安装 node 后,使用 nvm usenode 版本,以及用 nvm on 打开 nodejs 版本控制,否则 nodenpm 也都不可用。

0%