npm install慢/无响应解决方案

国内访问外网都很慢,甚至不能访问!大家都懂,都很无奈!
安装Node时自带的npm地址默认是:http://registry.npmjs.orgnpm install 没反应! 跟着下面操作来解决吧!
本文仅提供一种可靠方法

使用smart-npm

安装

npm install --global smart-npm --registry=https://registry.npm.taobao.org/

如果 window 用户安装最新版本失败,可以试试安装 smart-npm@1 ,两者功能几乎相同,发布版本 2 的主要原因是由于 npm 的升级,使的在 mac 上无法通过 bin 别名的方式覆盖原来的 npm, 只能通过先删除原来的 npm link 文件,再创建一个新的;但这种方式在 window 上可能会有问题, 所以,如果你是 window 用户,并且通过上面脚本无法安装成功的话,可以用下面脚本再试试。
npm install --global smart-npm@1 --registry=https://registry.npm.taobao.org/
安装成功后默认会在你的 npm 用户配置文件 ~/.npmrc 中添加淘宝的 registry。

卸载

npm smart uninstall   # 2.x.x 版本的 smart-npm 在卸载前需要先执行此脚本
npm uninstall --global smart-npm

使用

  • 安装后系统的 npm 会被替换了,如果你要使用原生的 npm 命令,可以用 npm-original 代替。

  • 新的 npm 会自动根据你使用的命令切换 registry:当你使用 publish, config, adduser, star
    等命令时,会强制使用官方的 registry,https://registry.npmjs.org;当你使用其它命令时,都会使用淘宝的镜像 https://registry.npm.taobao.org/

  • 如果要强制使用某个 registry 时,只要在命令后面添加 registry 参数即可,比如, npm install jquery
    –registry=https://r.cnpmjs.org
    就会使用你指定的 registry 去拉取 jquery

  • 如果要强制使用官方的 registry, 只要在命令后面加上 --npm 即可, 比如, npm install jquery
    –npm
    就会使用官方的 registry 去拉取 jquery,(当镜像没有及时更新时,用此会选项很有效)

  • 如果你想修改默认的淘宝镜像或者官方的 registry,可以在你的环境变量中添加这两个参数:NPM_OFFICIAL_REGISTRY,
    NPM_MIRROR_REGISTRY,以此来修改默认的官方 registry 和 淘宝镜像 registry。更多环境变量的配置请点击这里

以上方法无效时

大部分情况是因为npm版本太低,可升级npm版本,window平台下 首先删除C:\Users\X\AppData\Roaming 路径下npm,npm-cache两个文件夹,然后删除node.js,下载新版本重新安装,再使用smart-npm

参考文章:https://www.uedbox.com/post/8151/

发布了8 篇原创文章 · 获赞 5 · 访问量 562

猜你喜欢

转载自blog.csdn.net/qq_14965517/article/details/104388274