安装配置nvm-windows对Node.js与npm进行版本控制

一、nvm

由于Node.js版本原因,可能会出现一些错误,如IDEA中Node.js环境下npm报错Error:0308010C:digital envelope routines:unsupported。而且不同的项目,所采用的Node.js的版本不同,重新卸载安装配置,太过繁琐。所以可以使用nvm来动态灵活管理Node.js的版本

注意:Win7系统不支持最新版本Node.js,目前我在另一部机器上测试,最高版本只能使用Node.js13.14.0。
Node.js is only supported on Windows 8.1,Windows server 2012 R2, or higher.

#nvm:管理Node.js版本的工具,可以管理多个Node.js版本以及其对应的npm。

#Node.js:一个基于 Chrome V8 引擎的 JavaScript 运行环境,是一个开源的、跨平台的 JavaScript 运行时环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。

#npm:Node.js 的包管理器 npm,是目前最流行的Node.js 的包管理器。

#npm、Node.js、npm三者关系的总结:nvm管理Node.js的版本,npm管理Node.js的包。

注意:如果你之前已经单独在自己的机器上安装并使用过Node.js,必须先卸载这个已经安装好的版本,否则不仅无法纳入nvm的版本管理中,而且很可能会出现冲突问题。
在这里插入图片描述
在这里插入图片描述

在cmd中输入node -vnpm -v 分别检查Node.js和npm的版本,出现如下图的提示才算卸载完成:
在这里插入图片描述

二、下载并安装nvm

2.1 下载nvm-windows

点击访问链接下载nvm-windows

下载nvm-setup.exe或者nvm-set.zip(解压出来也是nvm-setup.exe)
在这里插入图片描述
最后会得到这样一个安装包
在这里插入图片描述

2.2 安装nvm-windows

在这里插入图片描述

在这里插入图片描述
注意:这个Node.js软链接文件夹,在nvm-windows安装结束后可能不会立即出现,需要你使用nvm install命令安装某个Node.js的版本或者切换版本后才会出现。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
检验nvm安装是否成功:nvm -v
在这里插入图片描述
nvm安装目录内容:
在这里插入图片描述
nvm安装过程中自动默认配置的用户变量:
在这里插入图片描述
在这里插入图片描述
nvm安装过程中自动默认配置的系统变量Path:
在这里插入图片描述

2.3 配置nvm taobao镜像

使用编辑器软件打开nvm安装目录下的settings.txt文件夹,在其中添加如下taobao镜像:
注意:这里设置的镜像源是安装Node.js和npm本身的源,不是安装Node.js包的源。

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

##npm taobao mirrors
npm_mirror:  https://npm.taobao.org/mirrors/npm/

在这里插入图片描述
settings.txt的默认内容
在这里插入图片描述
添加taobao镜像后的settings.txt:
在这里插入图片描述

2.4 新建node_global和node_cache

Node.js安装目录中新建node_global&node_cache文件夹

#node_global是npm的全局模块的路径
#node_cache是npm使用时的cache即缓存的配置路径。

在这里插入图片描述

三、配置nvm、Node.js、npm协同工作

3.1 使用nvm

nvm个人常用命令一览:

#nvm   -v                       查看nvm版本
#nvm                            查看nvm相关信息
#nvm   list  available          查看可用的版本
#nvm   install Node.js的版本号   安装Node.js18.16.0 (如nvm install 18.16.0)
#nvm   use    Node.js的版本号    使用Node.js18.16.0 (如nvm use 18.16.0)  如果安装了多个Node.js包,就相当于切换版本。 【只会安装不会安装并自动切换到这个版本】
#nvm   list或nvm ls             查看已下载的Node.js的版本

#notice:这里使用的较少
#nvm arch                       查看当前Node.js运行64位或32位操作系统上
#nvm on/off                     开启/关闭Node.js的版本管理
#nvm use 版本号 arch             使用指定版本指定位数的Node.js
#nvm uninstall                  卸载指定版本的Node.js

nvm -v 查看nvm版本:
在这里插入图片描述
nvm 查看nvm相关信息:
在这里插入图片描述
nvm list available 和 nvm install Node.js的版本号 :
在这里插入图片描述
Node.js官网显示长期维护版为18.16.0最新尝鲜版20.3.0nvm list available获取的一致:

在这里插入图片描述
###安装并切换到Node.js 20.3.0全过程###:

nvm listnvm use Node.js的版本号
在这里插入图片描述

#查看使用的Node.js的版本
node -v

#查看Node.js对应的npm的版本
npm -v

#查看npm config配置的信息
npm config list

3.2 npm config set registry 设置镜像站

可参考我这篇
IDEA中Node.js环境下npm报错Error:0308010C:digital envelope routines:unsupported

在CMD中使用nmp config 中的npm config set命令配置镜像-regisry
注意:这里设置的镜像源是安装Node.js包的源。

#npm config set registry 设置镜像站
npm config set registry=http://registry.npm.taobao.org

在这里插入图片描述
###注意:由上图操作得出一个结论:registry设置一次,对你已经安装的所有的Node.js版本的包都有效果###

3.3 npm config set 配置node_global和node_cache

在CMD中使用nmp config 中的npm config set命令配置node_globalnode_cache文件夹

npm config set prefix "D:\front\nvm\node_global"
npm config set cache  "D:\front\nvm\node_cache"
#node_global是npm的全局模块的路径
#node_cache是npm使用时的cache即缓存的配置路径。

在这里插入图片描述

3.4 npm config get 获取npm 相关配置信息

#npm config list            查看npm config配置的信息
#npm config get cache       获取cache配置的信息 (npm使用时的cache即缓存的配置路径)
#npm config get prefix      获取npm的全局模块的路径
#npm config get registry    获取镜像信息

#经过测试下列简化命令也适用
#npm  get cache       获取cache配置的信息 (npm使用时的cache即缓存的配置路径)
#npm  get prefix      获取npm的全局模块的路径
#npm  get registry    获取镜像信息

在这里插入图片描述
#经过测试下列简化命令也适用【可忽略此步骤】
在这里插入图片描述

四、使用nvm、Node.js、npm协同工作流程

目前(2023-6-22 17:28:46 )Node.js长期维护版为18.16.1(推荐多数用户使用)最新尝鲜版20.3.1(含最新功能) :
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

4.1 流程

注意:Win7系统不支持最新版本Node.js,目前我在另一部机器上测试,最高版本只能使用Node.js13.14.0。
Win7系统使用最新版Node.js20.3.1出现错误
在这里插入图片描述
Win7系统使用长期支持版Node.js18.16.1出现错误:
Node.js is only supported on Windows 8.1,Windows server 2012 R2, or higher.
在这里插入图片描述
Win7系统使用Node.js13.14.0:
在这里插入图片描述

#1、通过nvm查看可用的Node.js的版本
nvm   list  available 

#2、查看目前已经安装Node.js的版本(查看已下载的Node.js的版本)
#nvm list  或 nvm ls           

#3、 安装需要的Node.js的版本 (如nvm install 18.16.1)【只会安装不会安装并自动切换到这个版本】
 #nvm   install Node.js的版本号  

#4、使用此版本
#nvm   use    Node.js的版本号    
使用Node.js 18.16.1 (如nvm use 18.16.1) 如果安装了多个Node.js包,就相当于切换版本。


#5、切换版本【同上,可忽略】
nvm   use    Node.js的版本号    

使用Node.js 20.3.1 全过程截图【从18.16.1切换到20.3.1】:
在这里插入图片描述
使用Node.js 18.16.1 全过程截图【从20.3.1切换到18.16.1】:
在这里插入图片描述

4.2 查看Node.js版本的相关配置信息

Node.js18.16.1的配置信息:
在这里插入图片描述
Node.js20.3.1的配置信息:
在这里插入图片描述
所以:cache、prefix、registry这些设置只需要配置一次就可以了,类似全局变量。
cache、prefix、registry按前面所述配置好了,这些信息保存在.npmrc 文件中:
在这里插入图片描述
在这里插入图片描述

4.3 使用过nvm进行Node.js版本切换的nvm文件目录

在这里插入图片描述
使用过一段时间后的node_cache文件夹产生的缓存文件:
在这里插入图片描述
在这里插入图片描述

五、参考资料

nvm-sh
coreybutler/nvm-windows
nvm-windows 下载安装及踩坑
Index of /npm/
Windows nvm安装与使用
nvm for windows 下载、安装及使用
IDEA中Node.js环境下npm报错Error:0308010C:digital envelope routines:unsupported

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 如果您的 Node.jsnpm 版本不一致,您可以使用以下步骤来解决这个问题: 1. 打开命令行窗口,输入 `node -v` 和 `npm -v` 来查看当前的 Node.jsnpm 版本。 2. 如果您想要升级或降级 Node.js 版本,可以使用 nvm 或 n 这样的工具来管理 Node.js 版本。例如,可以使用 `nvm install 12.18.3` 命令来安装 Node.js 12.18.3 版本。 3. 如果您想要升级或降级 npm 版本,可以使用 `npm install -g npm@6.14.8` 命令来安装 npm 6.14.8 版本(这里的版本号可以根据您的需要替换成其他版本号)。 注意:在执行上述命令时,请确保您已经具有管理员权限。如果不确定如何操作,可以尝试在命令前加上 `sudo` 命令,例如 `sudo npm install -g npm@6.14.8`。 希望这些信息能够帮助您解决 Node.jsnpm 版本不一致的问题。如果还有其他问题,欢迎您再次提问。 ### 回答2: 如果在Windows系统上出现node.jsnpm版本不一致的问题,可以按照以下步骤解决: 1. 首先,确定你已经安装node.jsnpm。在Windows上,你可以在命令提示符中输入以下命令来验证他们的版本: ``` node -v npm -v ``` 这将输出你安装node.jsnpm的版本号。 2. 如果你已经验证了版本号不一致,可以尝试升级npm。可以使用以下命令来全局安装最新版本的npm: ``` npm install -g npm ``` 这将安装最新版本的npm进行全局更新。 3. 如果升级npm后,仍然出现版本不一致的问题,可以尝试使用nvm(Node Version Manager)来管理node.js版本。首先,卸载之前安装node.js,然后使用以下步骤安装nvm: - 在浏览器中搜索“nvm for Windows”,打开GitHub上的nvm项目。 - 下载最新版本的nvm-setup.zip文件,并解压到任意文件夹。 - 运行nvm-setup.exe安装程序,并按照安装向导进行安装。 - 安装完成后,打开一个新的命令提示符窗口,并输入以下命令验证nvm是否安装成功: ``` nvm --version ``` 4. 安装nvm后,可以使用以下命令安装所需版本的node.js: ``` nvm install <node_version> ``` 替换`<node_version>`为你要安装的具体版本,例如`nvm install 14.17.0`。 5. 安装完成后,使用以下命令切换到所需版本的node.js: ``` nvm use <node_version> ``` 这将切换到指定版本的node.js。 通过以上步骤,你应该能够解决Windowsnode.jsnpm版本不一致的问题。请注意,在执行任何更改之前,备份你的项目文件和配置,以防止数据丢失。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值