2021-04-22

安装nvm下载node,npm以及配置的全过程。解析npm下载包使用 -v指令 发现下载的包不存在的原因。

1.nvm下载及安装的过程

1.1nvm下载

nvm下载地址:https://github.com/coreybutler/nvm-windows/releases
2021-04-22下载红框内的压缩包。

1.2nvm安装

2021-04-22同意,点击next
2021-04-22设置nvm安装的文件,点击next
2021-04-22设置node安装的文件,点击next

注意:如果电脑已经下载了node需要先卸载node,再安装nvm,以避免冲突。

1.3查看nvm是否安装成功2021-04-22### 1.4设置环境变量2021-04-22

在设置中搜索环境变量,点击红框中的选项
2021-04-22
设置环境变量
2021-04-22
正常情况下nvm的环境变量和node的环境变量(包括用户变量和系统变量)已经被配置
如果没有配置,可以安装图片配置

2.下载node

nvm下载node的指令为 : nvm install [node的版本]

2021-04-222021-04-22
路径nvm的路径下有下载到的对应版本的node

*
2021-04-22
nodejs这个文件夹实际上是一个快捷键,其对应的真正文件是被use的对应node版本所安装的位置

2021-04-22
当我们使用12.18.0版本的node时

2021-04-22
2021-04-22
nodejs这个快捷键指向的即是12.18.0*版本的node*
2021-04-22
2021-04-22
2021-04-22

同理,当我们切换成10.16.3版本的node,那么nodejs这个快捷键指向的就是v10.16.3这个文件。

3.配置全局依赖的环境变量

3.1手动创建文件

2021-04-22
v10.16.3下面的node_modules是在node安装npm时创建的

我们在node_modules下面创建
node_globalnode_cache这个两个文件

3.2设置环境变量

2021-04-22在系统环境变量下面的 PATH 里面创建一个新的环境变量

路径即为 node_global 这个文件所在的路径

4.npm的配置

4.1设置npm下载依赖包的位置

使用指令

npm config ls

2021-04-22可以看到npm的一些属性

输入以下两个指令
2021-04-22
npm config set prefix "D:\nvm\nodejs\node_modules\node_global"

此指令表示npm下载的依赖包,将会放在node_global文件下

2021-04-22
C:\Users\86153>npm config set cache "D:\nvm\nodejs\node_modules\node_cache"

此指令表示npm产生的缓存文件,将会在node_cache目录下

4.2配置.npmrc文件

2021-04-22打开npm文件下的.npmrc文件
2021-04-22
添加一条 registry=https://registry.npm.taobao.org

设置淘宝镜像

*
使用 npm config set 指令添加文件地址
与在 .npmrc文件内 直接添加文件地址

效果等同

5.使用cnpm下载

npm install -g cnpm --registry=https://registry.npm.taobao.org

2021-04-22
安装(淘宝镜像)cnpm 指令

使用cnpm原因:由于npm的接口是github,国外网站在国内下载速度相对较慢
cnpm是的接口是淘宝镜像(淘宝镜像会定期更新github的源码)
相对来说,国内的接口会更快一些
所以我们在全局安装cnpm指令以后,都用cnpm去安装依赖包

例:使用cnpm全局安装gulp依赖
2021-04-22

6.分析 npm 成功下载的依赖包 使用 -v指令 发现下载的包不存在的原因


2021-04-22

出现该情况原因一般是环境变量没有配置好

在3.2设置环境变量PATH的路径
一定要和4.1设置npm依赖包的路径(npm config set prefix")相同

D:\nvm\nodejs\node_modules\node_global
2021-04-22
2021-04-22

npm下载的依赖包会在node_global文件下
因此,我们设置的环境变量的地址(全局的寻找范围)也应该是node_global
如果这两者不同,就会出现 依赖包寻找不到的情况
*

总结

花了我一天搞懂这个真的太烦了qwq
希望学会的小伙伴点个赞

上一篇:由vue3引起的一段值得记录经历


下一篇:设置 nodejs 默认版本