windows搭建nvm node管理器踩坑记录

背景

node已经出到了17的版本了,但是我的电脑还是14的版本,也不想升级。因为之前下载vite的项目时候,发现用node16就有问题了,所以我就不是很想升级。

image.png

但有时候开发一些项目,都已经需要node16了,真是没办法。

image.png

此时可以用nvm来管理node版本。

安装nvm

先到官网下载nvm:Releases · coreybutler/nvm-windows (github.com)

image.png

然后一键安装就行了。

image.png

因为电脑之前安装过了node,所以nvm问你是否让它控制你这个版本,我们选择是。

安装好后,输入nvm,出现版本号,就说明安装成功了。

扫描二维码关注公众号,回复: 13647337 查看本文章

image.png

此时我们输入node -v 查看版本。(如果之前的node不是安装在c盘的,这里会报错,不过不用管它。)

image.png

image.png

再输入nvm ls 查看可用的版本。(如果node不是安装在C盘的,这里是空的,不过也不用担心。)

image.png

image.png

配置nvm镜像

到nvm的安装目录去修改镜像,加快下载 C:\Users\dgbuaa\AppData\Roaming\nvm

image.png

把这两句复制进去:

node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/
复制代码

image.png

下载node版本

下载最新版的node 16.13.1,nvm install 16.13.1。(在这里会停住大概10分钟不动,但绝不是卡了,而是在下载,请不要关闭窗口。)

image.png

下载完后,查看node列表,nvm ls

image.png

切换node版本

然后切换node版本,此时需要右键管理员打开,否则切换不了,会报错。

image.png

然后就成功切换node版本了。

image.png

注意

在使用npm的全局包时,有可能会找不到,因为被单独放到了各自版本的node_modules中,所以在使用各自的node版本的时候,有可能都需要在安装一遍全局包。

npm镜像管理器

我看现在还是有很多文章在介绍如何给npm配置淘宝镜像,我其实是不太推荐这种做法的。因为淘宝源上的npm包会做一层处理的,有时候用淘宝源上的镜像包在项目中是运行不起来的,需要切回npm源来下载。所以我推荐用nrm包来管理npm镜像的镜像源,这样来回切换的时候也方便很多。

nrm的下载就没有nvm那么麻烦了,直接全局安装nrm。

npm i nrm -g
复制代码

查看镜像

输入nrm ls,查看可用的npm镜像。

image.png

npm测速

输入nrm test,查看下载速度

image.png

切换淘宝源

输入nrm use taobao,这个不用管理员打开也能切换。以前是有个*表示当前使用的npm镜像的,现在就看不到了,只有在nrm test的时候才能看到,不知道是我的电脑的问题还是nrm的版本的问题,不过现在就是用淘宝的镜像了。

image.png

使用npm查看也是用淘宝的镜像,npm config get registry

image.png

添加镜像源

但是我们发现这个url地址和市面上推荐的taobao源地址不一样,我们可以自行添加一个新的taobao2源

nrm add taobao2 http://registry.npm.taobao.org/
复制代码

这样就多了一个taobao2出来

image.png

我们测一下速:nrm test,

image.png

发现确实是比nrm自带的淘宝源要快一点。

删除镜像源

如果有一天它失效了,我们就怒删它!nrm del taobao2,这样就删除掉了自己添加的源。

image.png

再测试一下,nrm test

image.png

删除nrm自带的镜像源

我们发现npmMirror居然这么慢!但是nrm自带的源用nrm del是删不掉的,我们要到nrm的全局配置中去删除掉它。

找到nrm的安装目录:C:\Users\【你自己的用户名】\AppData\Roaming\npm\node_modules\nrm,修改registries.json

image.png

image.png

查看源,这样就删除了

image.png

nvm参考文章:juejin.cn/post/701139…

猜你喜欢

转载自juejin.im/post/7049992976340090894