下午npm install卡了俩小时啥都没down下来,上网搜索解决办法。
方案一:安装国内镜像
这个是比较常用的方法。可能会存在cnpm安装成功,npm couldnot find modules 的问题,这个可以之后再解决。这个是国内的镜像,加载速度明显要比国外的快很多,而且cnpm有明显的进度条,可以方便我们查看安装进度(比如6/11)。
npm install -g cnpm --registry=https://registry.npm.taobao.org
cmd输入以上命令就可以了,然后输入
cnpm install
后面的操作跟不使用镜像的操作是差不多的。
方案二:使用代理registry
npm config set registry https://registry.npm.taobao.org
在安装目录下 ode_modules pm pmrc里添加
registry=https://registry.npm.taobao.org
后续的install等命令还是通过npm运作,而不是cnpm。
如果要删除代理
npm config delete registry
--
不过我用代理没啥用。我的问题是卡在一开始就动不了了。
后来使用下方命令查看进度条(如果用了这条命令还是不能看到进度条,换命令工具。我之前用的powershell不行,换成cmd就可以了),发现一直卡在"Get 400 github.com",就是github请求无效。
npm config set loglevel=http
明明github是可以打开的,为毛还有这个问题……然后我上网找了个github的ip在hosts文件中映射上。详情可见无法连接github
重新打开cmd,运行npm install,报错:
19189 error code ENOTFOUND
19190 error errno ENOTFOUND
19191 error network request to https://registry.npm.taobao.org/ms failed, reason: getaddrinfo ENOTFOUND domain
19192 error network This is a problem related to network connectivity.
19192 error network In most cases you are behind a proxy or have bad network settings.
19192 error network
19192 error network If you are behind a proxy, please make sure that the
19192 error network 'proxy' config is set properly. See: 'npm help config'
重置proxy
npm config rm proxy
npm config rm https-proxy
再npm install,就可以正常下载了。
--
如果卡在某一个包了下不动了,新开一个文件夹,把package.json放进去,然后指定包和版本下载
//举例
npm install --save-dev office-ui-fabric-react@6.214.0
下载完成后,把下载下来的包放进项目的node_modules中就好。