本文介绍了如何使用 nvm 切换 node 和 npm 版本,以及如何使用 nrm 切换 npm 下载源。
一、NVM
Nvm 可以切换 node 与 npm 版本,在开发不同项目时,可能会用到不同的 node 与 npm 版本,所以使用 nvm 可以方便的在不同 node 与 npm 版本之间进行切换。
写在前面
- 在安装 Nvm 之前,先将之前安装的 node 进行卸载。否则可能会出现无法切换 node 版本的问题
- 将之前安装的全局插件删除掉,否则可能会导致 nvm 命令不起作用。文件目录如下
1
2C:\Users\Administrator\AppData\Roaming\npm
C:\Users\Administrator\AppData\Roaming\npm-cache
nvm 的安装
下载 nvm 插件,安装地址: Github: Download nvm-windows (nvm-setup.zip)。
下载完成,解压文件之后,双击进行安装:
- 设置
nvm安装目录,这里的路径可以根据自己的需要进行填写,不要包含中文名
第一步
- 设置
- 设置
nodejs各版本安装目录。这个目录是nvm install node版本时存放nodejs的目录
第二步
- 设置
- 安装完成,在命令行输入:
nvm version,查看到对应的版本号,说明 nvm 安装成功了。
- 安装完成,在命令行输入:
nvm 常用命令
nvm install latest:安装最新的nodejs版本nvm install 11.12.0:安装对应的nodejs版本nvm uninstall 11.12.0:卸载对应的nodejs版本nvm list available:列出所有可用的nodejs版本nvm list:查看nvm列出已经安装的nodejs版本nvm use 11.12.0:使用对应的nodejs版本- 更多命令在命令行输入
nvm即可查看
常见问题
提示 nvm 不是内部或外部命令的问题
- 将之前 npm 安装的全局包删除掉。文件目录如下:
1
2C:\Users\Administrator\AppData\Roaming\npm
C:\Users\Administrator\AppData\Roaming\npm-cache
- 将之前 npm 安装的全局包删除掉。文件目录如下:
nvm 切换 node 版本无效的问题
- 卸载原来安装的 node 版本与全局安装的包
nvm 下载速度慢的问题
- 在 nvm 安装目录下找到
settings.txt文件,添加下面两行代码:1
2
3
4root: D:\DevTools\NVM\nvm
path: D:\DevTools\NVM\nodejs
+ node_mirror: https://npm.taobao.org/mirrors/node/
+ npm_mirror: https://npm.taobao.org/mirrors/npm/
- 在 nvm 安装目录下找到
二、NRM
在使用 npm 的过程中,可能插件安装速度比较慢,我们可能会使用淘宝源对插件进行下载安装。或者在公司内部,有一些私有的插件,需要使用公司的源才可以下载。这种情况,我们就需要设置不同的源来进行下载。每次手动设置相对比较麻烦。而 nrm 可以很好的解决这个问题。
nrm 的安装
1 | # 全局安装 nrm |
安装完成后,输入命令 nrm ls,可以看到默认已经有了 6 个源(带 * 号的为当前使用的源)1
2
3
4
5
6* npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
taobao - https://registry.npm.taobao.org/
nj ----- https://registry.nodejitsu.com/
npmMirror https://skimdb.npmjs.com/registry/
edunpm - http://registry.enpmjs.org/
输入 nrm use taobao,即切换 registry 到 taobao,即可使用淘宝的源进行插件的安装下载了。
nrm 常用命令
nrm ls:查看所有配置好的源以及对应名称nrm add company http://npm.xxx.cn:添加源,company是名称,可以自行命名,后面是源的url地址nrm del company:删除源,根据名称company可以删除对应的源nrm test [registry]:测试源的速度,不加对应的registry名称,测试所有源的速度,添加对应的名称,比如company,就是测试company对应的源的速度nrm use company:切换源,即可使用company对应名称的源- 更多命令在命令行输入
nrm即可查看
三、额外知识点
安装 cnpm:
npm install -g cnpm --registry=https://registry.npm.taobao.org设置 npm 全局包的安装路径(如果不想自己控制路径就不需要做下面这些操作):
- 执行命令:
npm config set prefix "D:\DevTools\Nvm\npm-global" - 设置环境变量:将 Path 中:
C:\\Users\\Administrator\\AppData\\Roaming\\npm修改为D:\\DevTools\\Nvm\\npm-global
- 执行命令:
查看已经安装的全局包:
npm ls -g --depth=0手动设置 npm 源
npm config get registry: 查看 npm 当前源npm config set registry https://registry.npm.taobao.org/:设置 npm 源为淘宝npm install --registry=https://registry.npm.taobao.org:使用特定源安装所有依赖的包npm install express --registry=https://registry.npm.taobao.org:使用特定源安装 express 包