强力解决npm各种不爽-切换npm 资源管理器 -cnpm安装报错

2,564 阅读2分钟

随着前段发展,基于node前端的工程化成为了日常工作标配。node在使用过程中,依赖的各种包需要使用npm来管理,但是!npm在国内非常不好用,具体原因你懂的。

1.搬梯子爬墙:此方法需要买梯子,而且有风险。
2.cnpm

此方法是用cnpm 命令把安装的包指向了淘宝npm镜像库,下载软件包会快很多。但是还是有弊端的。只有使用cnpm安装npm包的时候才会指向淘宝镜像,很多npm包本身就依赖了很多其他包,而且集成了npm install,在安装一个包的依赖包时,还会使用npm install !!这就导致了使用cnpm安装某个包,但是中途还会报错。

解决方案

那就没有更好的解决方法了么?当然有! 终极解决方法就是把npm命令的仓库源改成国内的,在某包使用npm命令去安装依赖包的时候,依然访问的是国内镜像。这就保证了安装时不会网络问题导致安装失败,但是也有缺点,换成国内镜像源后,你不能再publish ,因为国内源只是一个拷贝库,不能提交。但是对于只是使用和安装包来说,用不到publish。

安装nrm

npm install nrm -g

安装成功后 可以输入 nrm help查看帮助。

nrm help

查看所有源

nrm ls

image.png

切换到源 例:淘宝

nrm use taobao

增加源

nrm add 源名称 源地址

删除源

nrm del

源 测速

nrm test  #所有 源测速
nrm test  源名称  # 之策是当前速度

临时使用淘宝镜像源

npm --registry https://registry.npm.taobao.org install node-red-contrib-composer@latest

全局配置切换到淘宝镜像源

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

全局配置切换到官方源

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

检测是否切换到了淘宝源

npm info underscore

image.png
切换回npm官方源

nrm use npm