问题:运行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种,优先级由高到底分别是:
-
命令行参数。
--proxy http://server:port
即将proxy的值设为http://server:port
。 -
环境变量。 以
npm_config_
为前缀的环境变量将会被认为是npm的配置属性。如设置proxy可以加入这样的环境变量npm_config_proxy=http://server:port
。 -
用户配置文件。可以通过
npm config get userconfig
查看文件路径。如果是mac系统的话默认路径就是$HOME/.npmrc
。 -
全局配置文件。可以通过
npm config get globalconfig
查看文件路径。mac系统的默认路径是/usr/local/etc/npmrc
。 -
内置配置文件。安装npm的目录下的npmrc文件。
-
默认配置。 npm本身有默认配置参数,如果以上5条都没设置,则npm会使用默认配置参数。
GitHub issues: