NPM 是随同 NodeJS 一起安装的包管理工具,我们经常使用它来下载第三方包到本地。
但在使用 NPM 过程很多人估计都知道,在国内下载第三方包的速度极其之慢。
下面是我整理的几种比较好用的解决办法。
淘宝NPM镜像(cnpm)
它是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。
淘宝 NPM 镜像地址:https://npm.taobao.org
使用说明
你可以使用淘宝 NPM 镜像定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm:
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
这样就可以使用 cnpm 命令来安装模块了
$ cnpm install [name]
实例
安装 Express 开发框架:
$ cnpm install express
npm源管理工具
nrm 是一个 NPM 源管理器,允许你快速地在 NPM 源间切换。
开源地址:https://github.com/Pana/nrm
安装
基于 npm ,全局安装以后,你开源无缝快速切换几个源,提高下载速度,拒绝 loading !
$ npm install -g nrm
使用说明
列出可用的源:
$ nrm ls
* npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
taobao - https://registry.npm.taobao.org/
nj ----- https://registry.nodejitsu.com/
rednpm - http://registry.mirror.cqupt.edu.cn/
npmMirror https://skimdb.npmjs.com/registry/
edunpm - http://registry.enpmjs.org/
切换源
$ nrm use taobao
verb config Skipping project config: C:\Users\user/.npmrc. (matches userconfig)
Registry has been set to: https://registry.npm.taobao.org/
增加源:
$ nrm add <registry> <url> [home]
删除源:
$ nrm del <registry>
测试速度:
$ nrm test
npm ---- 1177ms
cnpm --- 236ms
* taobao - 173ms
nj ----- Fetch Error
rednpm - Fetch Error
npmMirror 3013ms
edunpm - Fetch Error
总结
这是我认为在解决npm慢的几种方法中比较简单易操作的两种方法。
在以上两种方法中,我比较倾向的是第二种方法,可供选择的源更多,可操作空间大。
在速度测试中,没有使用vpn的情况下,明显taobao
源是最为合适的选择。
网友评论