安装nrm
npm install -g nrm
查看可选的镜像源
nrm ls
使用镜像源
nrm use taobao // 淘宝镜像为例
增加镜像源
nrm add [镜像名] 镜像地址
删除镜像源
nrm del [镜像名]
测试镜像源地址的速度
nrm test [镜像名]
第一个坑:nrm不是内部或外部命令,也不是可运行的程序
因为node安装的不是默认C盘,需要配置win10 环境变量
1.查看nodeJS全局安装路径:
npm config ls
图中prefix的路径就是nodeJS全局安装路径。
2.在系统环境变量中配置nodeJS全局安装路径:
NRM_PATH //名字任意
D:\develop\nodeJS\npm_modules //npm的prefix路径
编辑path-新增 NRM_PATH(刚新建的变量名)
3.重启cmd即可:
nrm ls
正常情况下:
实际上,我又遇到了第二个坑
nrm安装报错
C:\Users\kefu>nrm --version
internal/validators.js:124
throw new ERR_INVALID_ARG_TYPE(name, 'string', value);
^
[TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined
at validateString (internal/validators.js:124:11)
at Object.join (path.js:375:7)
at Object.<anonymous> (C:\Users\kefu\AppData\Roaming\npm\node_modules\nrm\cli.js:17:20)
at Module._compile (internal/modules/cjs/loader.js:1063:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
at Module.load (internal/modules/cjs/loader.js:928:32)
at Function.Module._load (internal/modules/cjs/loader.js:769:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
at internal/main/run_main_module.js:17:47
] {
code: 'ERR_INVALID_ARG_TYPE'
}
解决方案
找到下方地址(见加粗部分,具体位置请参考报错代码的路径)
C:\Users\kefu\AppData\Roaming\npm\node_modules\nrm\cli.js:17:20
注释或者删除【cli.js】第十七行,修改为下方代码
//const NRMRC = path.join(process.env.HOME, '.nrmrc'); (删除)
const NRMRC = path.join(process.env[(process.platform == 'win32') ? 'USERPROFILE' : 'HOME'], '.nrmrc');
最后一步,我们在cmd中执行nrm --version,即可发现成功显示版本号
C:\Users\kefu>nrm --version
1.2.1