nrm 使用问题
前言
这几天在新的项目中由于要使用 video-player 组件,这个只能使用 npm 源才可以,使用淘宝镜像的话有问题就不能正常使用。
一、nrm 使用
安装:
npm install -g nrm
可用镜像源
nrm ls
测试源速度
nrm test [reg]
使用源
nrm use [reg]
二、项目中的问题
上面说的,要使用 npm 源。由于 nrm 默认的是淘宝镜像。
于是用:nrm use npm
虽然上面的代码成功,但是查看当前项目使用的镜像源还是淘宝镜像。
但是在项目外地地方查看镜像源已经变为了 npm。从这里想到,应该是项目中有了什么设置。
果然,全局搜索后找到一个文件:.npmrc
这个文件设置了当前项目中的一些配置,如:electron 镜像源、npm 镜像源等信息。
现在就找到了问题:虽然 rnm 设置了镜像源,但是当前项目中 .npmrc 有设置,.npmrc 中优先。
三、报错
报错内容是: throw new ERR_INVALID_ARG_TYPE(name, 'string', value);
1、查看 npm 配置
npm config ls
如果 如下图中带有 win32
那么主要问题是 nrm 设置的环境变量有问题需要修改
2、修改 nrm cli.js 文件
在 nrm 安装目录下查找 cli.js 文件修改如下:
const NRMRC = path.join(process.env.HOME, '.nrmrc'); // 修改后 const NRMRC = path.join(process.env.USERPROFILE, '.nrmrc');
这时再使用 nrm 正常