使用nvm在Windows上管理Node版本

使用nvm在Windows上管理Node版本

在导入项目的时候遇到如下报错:

1675661345656

根据报错信息可以看出是该项目不兼容目前电脑上的18.12.1的Node.js版本,所以需要更改Node.js的版本,暴力删除然后重装是比较麻烦的,这时候就需要用到nvm(Node Version manager)来进行Node的版本管理。

1.卸载Windows上安装的Node.js

首先需要卸载我们现在安装的Node.js,控制面板--》卸载程序--》卸载Node.js

1675662466009

2.下载安装配置nvm

1.下载

GitHub下载链接:https://github.com/coreybutler/nvm-windows/releases

本人百度网盘下载:

需要下载黄色方框圈中的nvm-setup.exe或者nvm-setup.zip,安装包形式的不用配置环境就可以使用。

1675662631095

2.安装

直接一路next直到安装。控制台输入nvm,出现以下界面则表示安装成功。

1675663095275

3.配置

在nvm安装路径中的settings.txt中添加淘宝下载镜像源

node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

1675663755110

最好复制,不要自己打,可能在冒号那出错,配置镜像源错误会出现找不到源的问题。

3.解决实际问题

最初遇到的问题是项目与机器上的node版本不兼容,所以需要下载8、10、12、16或者17的版本。首先使用命令nvm list available查看网络可以安装的版本。

1675664064064

因为无法显示全部的版本,所以我们去CNPM Binaries Mirror (npmmirror.com)来选择我们需要的版本。这里我们下载17.3.0这个版本,使用nvm install命令安装对应的版本,安装之后会默认使用最新安装的版本。

1675664260775

然后使用node on命令打开nodejs版本控制,这一步非常重要。然后我们使用node -v命令来查看node的版本。如果node -v找不到命令,进入管理员模式然后重新运行node on命令。

1675664552793

这时候我们在重新Build工程可以看到工程成功Build。1675664715387

4.切换版本

虽然成功解决了安装17版本的Node.js成功Build项目,但是距离我们的目的还差一步:使用nvm完成对Node.js版本的管理。

这时候我们再下载原来的Node.js版本:18.12.1,使用nvm install命令安装18版本的Node.js。这时候我们使用node -v查看node版本发现还是17,这是因为没有使用node on命令使配置生效,使用node on命令之后我们在查看Node.js版本发现已经切换到18了。

1675664932827

但是,当我们本地有多个版本的时候,我们该怎么控制Node.js版本呢?

首先使用node list installed命令查看已经安装的版本,然后使用命令nvm use命令切换Node.js版本为17,然后在查看node的版本发现切换为17

1675665997892

5.常用命令

命令 含义
nvm list installed 查看已经安装的版本
nvm list available 查看网络可以安装的版本
nvm arch 查看当前系统的位数和当前nodejs的位数
nvm install [arch] 安装制定版本的node 并且可以指定平台 version 版本号 arch 平台
nvm on 打开nodejs版本控制
nvm off 关闭nodejs版本控制
nvm proxy [url] 查看和设置代理
nvm node_mirror [url] 设置或者查看setting.txt中的node_mirror,如果不设置的默认是 https://nodejs.org/dist/
nvm npm_mirror [url] 设置或者查看setting.txt中的npm_mirror,如果不设置的话默认的是:https://github.com/npm/npm/archive/.
nvm uninstall 卸载制定的版本
nvm use [version] [arch] 切换制定的node版本和位数
nvm root [path] 设置和查看root路径
nvm version 查看当前的版本
posted @ 2023-02-06 17:28  Mr_WildFire  阅读(358)  评论(0编辑  收藏  举报