返回

掌握NPM换源命令,告别安装烦恼

前端

NPM换源的常见场景

npm 源切换命令不仅用于 npm 下载,也用于 npm 上传,即使用npm publish 命令将包发布到npm 仓库时。
国外用户选择国内镜像源以提升下载速度,反之国内用户使用国外源。例如淘宝npm源比官方源下载速度快。
国内某个资源不可用时,可快速替换为另一个地址。

NPM单项目换源命令

在项目根目录执行以下命令,即可将该项目的npm源切换为淘宝源:

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

切换回官方源:

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

NPM全局换源命令

在终端执行以下命令,即可将全局的npm源切换为淘宝源:

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

切换回官方源:

npm config set registry https://registry.npmjs.org/ -g

NPM源切换注意事项

  • npm config set registry <源地址> 命令只能在项目根目录下执行,全局 npm 源切换需要加 -g 参数。
  • 执行 npm config set registry 命令后,需要重新运行 npm install 命令才能生效。
  • npm 源切换后,可能导致部分包安装失败,因为淘宝源并不包含所有 npm 包。

如何查看当前npm源

执行以下命令,可以查看当前的npm源:

npm config get registry

如何设置npm源的优先级

如果有多个npm源,可以通过设置源的优先级来控制npm从哪个源下载包。执行以下命令,可以设置淘宝源的优先级最高:

npm config set registry "https://registry.npm.taobao.org,https://registry.npmjs.org/"

NPM源常见问题

1. 换源后,某些包安装失败,怎么办?

淘宝源并不包含所有 npm 包,因此换源后可能会导致部分包安装失败。解决方法是将这些包从官方源安装。

2. 如何将包从官方源安装?

在安装包时,加上 --registry=https://registry.npmjs.org/ 参数,即可从官方源安装该包。例如:

npm install lodash --registry=https://registry.npmjs.org/

3. 如何使用淘宝源上传包到npm?

在发布包时,加上 --registry=https://registry.npm.taobao.org/ 参数,即可将包发布到淘宝源。例如:

npm publish --registry=https://registry.npm.taobao.org/