前言
nvm 是NodeJS版本管理工具。
下载的版本部分Node和NPM版本不匹配。
目前测试成功的版本
- 10.16.3
- 12.22.6
- 16.13.0
- 18.20.8
安装
Windows
查看我自己的Node版本
1 | node -v |
所以升级Node版本即可,这里使用nvm
管理Node版本
nvm
可以通过下面的连接下载安装即可。
https://github.com/coreybutler/nvm-windows
链接:https://pan.baidu.com/s/1tvOu3UoIUF2riVRqbcmqTA
提取码:763s
注意
安装路径不能出现空格,否则安装失败!
安装后会自动创建以下的环境变量
NVM_HOME
:指向nvm
的安装目录。NVM_SYMLINK
:指向当前使用的 Node.js 版本的符号链接目录。
查看环境变量
1 | echo %NVM_HOME% |
Linux
国内镜像
安装
1 | yum install curl |
卸载
1 | bash -c "$(curl -fsSL https://gitee.com/RubyKids/nvm-cn/raw/master/uninstall.sh)" |
添加
1 | export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node |
输入后,在终端中输入下面的命令使其生效,然后可以接着运行nvm命令
1 | source ~/.bashrc |
此时运行 查看所有可用版本
1 | nvm ls-remote |
镜像
NVM镜像
Windows
设置镜像地址
在 nvm 的安装路径下,找到 settings.txt
查找nvm路径(只能在CMD中使用)
1 | where nvm |
添加后内容如下:
1 | node_mirror: https://npmmirror.com/mirrors/node/ |
或者执行
1 | nvm npm_mirror https://npmmirror.com/mirrors/npm/ |
NPM镜像
1 | npm config set registry https://registry.npmmirror.com/ |
其中npm config
提供的参数:
registry
是设置依赖的镜像disturl
是设置Node的镜像sass_binary_site
是sass的镜像electron_mirror
是electron的镜像python_mirror
是python的镜像
新版本除了registry,其他都没法用命令设置了
我们可以编辑文件
1 | npm config edit |
添加
1 | registry=https://registry.npmmirror.com/ |
切换版本
1 | # 查看可用版本 |
查看node和npm版本
1 | node -v |
常见问题
安装依赖报错
npm install的时候报错
当通过nvm切换nodejs版本为16以上时,npm install [package]
报错:
Unexpected token ‘.’
原因是nvm-windows的问题,需要升级NVM版本
我这里升级到最新的1.2.2
版本就没问题了
https://github.com/coreybutler/nvm-windows/releases
下载后要卸载并重新下载NodeJS
1 | nvm uninstall 18.20.8 |
查看NVM版本
1 | nvm version |
下载提示证书失效
npm ERR! request to https://registry.npm.taobao.org/yorkie/download/yorkie-2.0.0.tgz failed, reason: certificate has expired
临时不验证证书
1 | npm config set strict-ssl false |
安装完所需的包后,最好将此设置还原,以保持更高的安全性:
1 | npm config set strict-ssl true |
下载版本失败
如果直接选择版本下载失败,我们可以自己下载
https://registry.npmmirror.com/binary.html?path=node/
下载的压缩文件解压,把文件夹的名称修改为类似于v12.22.6
这样的格式放在nvm
的目录下即可