[报错]执行npm install.报If you are behind a proxy,please make sure that the proxy cinfig is set property.

问题:运行npm 命令报错。运行npm cache clean --force清理缓存后,仍然报错。

原因一:代理的默认地址为proxy=http://127.0.0.1:8087 。
解决方法:运行$ npm config set proxy null 代理置为空。

原因二:网络不行,网络质量差或者公司的网有设置网络权限

解决方法:让别人把已经下好的node_moudles打包发给你,直接覆盖到相应的项目文件位置中。

pm全称为Node Packaged Modules。它是一个用于管理基于node.js编写的package的命令行工具。其本身就是基于node.js写的,这有点像gem与ruby的关系。

在我们的项目中,需要使用一些基于node.js的javascript库文件,就需要npm对这些依赖库进行方便的管理。由于我们的开发环境由于安全因素在访问一些网站时需要使用代理,其中就包括npm的repositories网站,所以就需要修改npm的配置来加入代理。

npm配置方式有6种,优先级由高到底分别是:

  1. 命令行参数。 --proxy http://server:port即将proxy的值设为http://server:port

  2. 环境变量。 以npm_config_为前缀的环境变量将会被认为是npm的配置属性。如设置proxy可以加入这样的环境变量npm_config_proxy=http://server:port

  3. 用户配置文件。可以通过npm config get userconfig查看文件路径。如果是mac系统的话默认路径就是$HOME/.npmrc

  4. 全局配置文件。可以通过npm config get globalconfig查看文件路径。mac系统的默认路径是/usr/local/etc/npmrc

  5. 内置配置文件。安装npm的目录下的npmrc文件。

  6. 默认配置。 npm本身有默认配置参数,如果以上5条都没设置,则npm会使用默认配置参数。

GitHub issues:

If you are behind a proxy, please make sure that the 'proxy' config is set properly. See: 'npm help config' · Issue #16355 · npm/npm · GitHub