npm读取config配置的优先级(yarn同理)

npm可以从多处读取npm的配置信息。不同地方的npm配置存在着优先级顺序。

下面从优先级高到低的顺序来介绍一下各配置。

命令行

> npm run commend --proxy http://server:port

命令行中将proxy的值设为http://server:port

环境变量

npm_config_为前缀的环境变量会被识别为npm的配置属性。如设置proxy。

npm_config_proxy=http://server:port

项目.npmrc文件

存在于项目根目录下的.npmrc配置文件/path/to/project/.npmrc

用户.npmrc文件

存在于用户根目录下的.npmrc文件。如windows下是%USERPROFILE%/.npmrc,MAC下是$HOME/.npmrc

全局.npmrc文件

存在于Node全局的.npmrc文件。如windows下$PREFIX/etc/.npmrc,MAC下是%APPDATA%/etc/.npmrc

npm内置的.npmrc文件

存在于npm包的内置.npmrc文件/path/to/npm/.npmrc

npm的默认配置

npm本身有默认配置。对于以上情况下都没有设置的配置,npm会使用默认配置。