npm install报错解决问题过程

最近在开发中遇到了一个问题,在项目中由于用到了公司内网下的npm依赖包,需要设置npm镜像地址为公司内网下的,但是我在设置完后在npm install的时候进度条竟然卡在那不动,刚开始还以为是网络的原因,后来我在其他的项目中npm install竟然没问题,那就说明不是网络的原因。并且同事的就没有问题。在解决问题的过程中我学到了很多命令:

1. 关于npm的:

npm config set registry http://registry.npmjs.org 

原npm地址 npm install下载会有点慢,有的依赖包或者软件的话需要翻墙的话那就下载不了了

npm config set registry https://registry.npm.taobao.org 

设置为国内镜像地址,使用的话直接npm install就行,相当于从淘宝镜像上面下载,速度会比原npm下载速度快得多


设置完后可以查询当前镜像地址是否更换了:

npm config get

然后在项目中就可以直接使用npm install下载各种依赖包了

2. 解决npm下载慢的问题也可以通过cnpm实现

先全局安装cnpm : npm install cnpm -g, 如果报错没权限操作的话执行:sudo npm install cnpm -g,下载完毕后直接 cnpm install package --save就可以,作用跟设置淘宝镜像地址一样。

3. 在解决问题的过程中我想着可能跟我的node版本有关,难道是版本太高了,下载不了某个低版本的依赖包,所以我就降低了我的node版本,而我又不想卸载我的原node,所以我查找资料,知道了有一个可以专门管理node版本的模块n,他可以实现node的升级,降级,安装多个版本的node并切换:

首先得全局安装n:sudo npm install n -g
然后检测安装了哪些版本的node: n
版本升级/降级:sudo n 版本号 (sudo n 6.4.1)
切换版本:n 版本号  (n 6.4.1)
删除版本:sudo n rm 版本号  (sudo n rm 6.4.1)
注:sudo是mac下输入密码验证身份的命令,因此window系统下用户是以管理员运行命令行,所以直接去掉sudo就行

4. 在npm install xxx@1.0.7 --save的时候报这样的错:


是因为xxx@1.0.7包的下载依赖于***@1.1.1,只要把***@1.1.1先下载,再重新下载***@1.1.1就行了。


5. 报这个错是因为没有操作权限,加上sudo就行了。

6. 执行npm cache clean --force 强制执行清除npm缓存

以上这些都是我在解决npm install内网下的包时报错学到的一些命令,但是最后我依旧没找到npm install下载内网下的包报错的解决版本。
最后的解决办法简直简单粗暴,找到了package-lock.json相应包的地址然后把包下载下来了,直接放在node_modules里面,简单粗暴的就解决了我想了半天的问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值