npm源管理器-nrm
npm源管理器-nrm
一、什么是nrm
nrm 是一个 npm 源管理器,允许你快速地在 npm源间切换。
什么意思呢,npm默认情况下是使用npm官方源(使用npm config ls命令可以查看),在国内用这个源肯定是不靠谱的,一般我们都会用淘宝npm源:https://registry.npm.taobao.org/ ,修改源的方式也很简单,在终端输入:
1 | npm set registry https://registry.npm.taobao.org/ |
再npm config ls
查看,已经切换成功。如图:
那么,问题来了,如果哪天你又跑去国外了,淘宝源肯定是用不了的,又要切换回官网源,或者哪天你们公司有自己的私有npm源了,又需要切换成公司的源,这样岂不很麻烦?于是就有了nrm。
二、nrm安装
使用下面命令进行全局安装:
1 | npm install -g nrm |
mac用户前面添加sudo,否则权限不足。
三、nrm使用
- 查看可选源,
*
表示当前被选中的源
1 | nrm ls |
- 添加源
1 | nrm add <registry> <url> |
registry
:源名称 url
:源地址
- 切换源
1 | nrm use <registry> |
- 查看当前源
1 | nrm current |
- 删除源
1 | nrm del <registry> |
- 测试源速度
1 | nrm test <registry> |
四、原理
其实nrm就是替我们执行这个命令来修改源:
1 | npm set registry <url> |
五、问题:nrm ls *(星号)、nrm current 输出为空
通过使用npm install -g nrm
进行安装nrm
,我出现了nrm ls *(星号)、nrm current 输出为空,但是npm的源是修改成功的可以正常使用。如图:
在网上看了一些贴子,主要是通过修改nrm的cli.js文件代码,结果第二天我发现星号又消失了。
解决方案:通过源码重新安装nrm
卸载nrm
:
1 | npm uninstall nrm -g |
安装:
1 | npm install Pana/nrm -g |
再次执行: