问题描述
在使用nrm切换源的时候,发现执行nrm ls命令后,原本的*号不见了,这样很难一眼看出当前使用的npm源:
npm ---------- https://registry.npmjs.org/
yarn --------- https://registry.yarnpkg.com/
tencent ------ https://mirrors.cloud.tencent.com/npm/
cnpm --------- https://r.cnpmjs.org/
taobao ------- https://registry.npmmirror.com/
npmMirror ---- https://skimdb.npmjs.com/registry/
临时解决:
在网上看了一些贴子,主要是通过修改nrm的cli.js文件代码
首先找到nrm文件夹下cli.js文件
找到其中这行代码
将中间的 && 替换成 ||
替换后
当时进行该操作后,再次执行nrm ls,我的星号又出现了。
但是高兴了没多久,结果第二天我发现星号又消失了。
我又尝试按网上的方法再次修改了cli.js里另一行代码,发现还是没有任何作用。
将中间的 && 替换成 ||
替换后
这两种方法大家也可以尝试一下,有人是成功的,只是不包括我😿
解决方案:
这时发现另一个问题,nrm current 输出为空,什么都没有?
明明已经通过nrm use taobao,将npm源切换到淘宝镜像服务器了,为什么nrm current啥也没有?
结合这个问题,终于在网上找到解决方案:
通过源码重新安装nrm
执行 npm install Pana/nrm -g
*注:这个过程特别久,只能耐心等了
安装成功之后再次执行nrm ls
npm ---------- https://registry.npmjs.org/
yarn --------- https://registry.yarnpkg.com/
tencent ------ https://mirrors.cloud.tencent.com/npm/
cnpm --------- https://r.cnpmjs.org/
* taobao ------- https://registry.npmmirror.com/
npmMirror ---- https://skimdb.npmjs.com/registry/
星号出现了!
而且nrm current也输出结果了
You are using taobao registry.