nrm轻松管理NPM注册表的工具与.npmrc定制化项目的依赖管理

简介: NPM 是前端开发中一个不可或缺的工具,用于管理和安装各种依赖包。但是,有时候我们需要从不同的 NPM 注册表中安装包,例如,从 `npmjs.org`、`淘宝镜像`或`私有注册表`中安装。这时候,一个方便的管理工具就显得非常重要了,而 nrm 就是这样一个工具。

npm.jpeg

背景

NPM 是前端开发中一个不可或缺的工具,用于管理和安装各种依赖包。但是,有时候我们需要从不同的 NPM 注册表中安装包,例如,从 npmjs.org淘宝镜像私有注册表中安装。这时候,一个方便的管理工具就显得非常重要了,而 nrm 就是这样一个工具。

什么是nrm?

nrm 是一个 Node.js 包管理器(NPM)的注册表管理工具。它允许用户轻松地切换不同的 NPM 注册表,以满足不同的需求。例如,如果你需要从npmjs.org注册表下载包,可以使用 nrm 快速地切换到该注册表;如果你需要从淘宝镜像下载包,也可以轻松地切换到该镜像。

nrm 是基于 Node.js 开发的命令行工具,可以在任何终端环境中使用。它不需要复杂的配置和安装,只需通过 NPM 全局安装即可使用。

如何使用nrm?

安装nrm

你可以使用以下命令来全局安装nrm:

npm install -g nrm

安装完成后,你可以通过运行以下命令来查看当前可用的 NPM 注册表列表:

nrm ls

这时,你应该能看到如下的输出:

npm -------- https://registry.npmjs.org/
yarn ------- https://registry.yarnpkg.com/
cnpm ------- http://r.cnpmjs.org/
taobao ----- https://registry.npm.taobao.org/
npmMirror -- https://skimdb.npmjs.com/registry/

切换 NPM 注册表

如果你想要从一个 NPM 注册表切换到另一个,可以使用以下命令:

nrm use <registry>

其中,<registry>是你想要切换到的 NPM 注册表的名称。例如,如果你想要切换到淘宝镜像,可以运行以下命令:

nrm use taobao

这时,你就可以从淘宝镜像中下载包了。

添加自定义 NPM 注册表

除了默认的 NPM 注册表列表,你还可以添加自定义的 NPM 注册表(有的公司是有自己的 NPM 注册表的)。

nrm add <registry> <url>

其中,<registry>是注册表的名称,<url>是注册表的URL地址。例如,如果你想要添加一个名为“my-registry”的私有注册表,可以运行以下命令:

nrm add my-registry https://my-registry.com

删除已添加的NPM注册表

如果你想要删除已添加的NPM注册表,可以使用以下命令:

nrm del <registry>

其中,<registry>是你想要删除的注册表的名称。例如,如果你想要删除名为“my-registry”的注册表,可以运行以下命令:

nrm del my-registry

通过使用 nrm,你可以方便地管理和切换不同的 NPM 注册表,以满足不同项目的需求,提高包下载的速度和稳定性。

.npmrc

有的小伙伴可能不想来回切换 npm 注册表来下载依赖,此时怎么办?

.npmrc定制化项目的依赖管理

.npmrc是一个 NPM 的配置文件,它可以用来设置和定制 NPM 的行为。在一个前端项目中,你可以在项目根目录下创建一个名为.npmrc的文件,并在其中定义一些配置选项,.npmrc 文件的优先级最高,从而影响 NPM 的行为。

如何设置 .npmrc

在项目的根目录下新建 .npmrc 文件,在里面以 key=value 的格式进行配置。

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

比如:以 @ant 开头的包从 registry=https://ant.xx.com 这里下载,其余全去淘宝镜像下载。

registry=https://registry.npm.taobao.org/
@ant:registry = https://ant.xx.com

总结:nrm 主要用于管理 NPM 注册表。而 .npmrc 可以设置项目全依赖镜像管理下载,也可以设置局部某一特定依赖下载。用好了 .npmrc 可以极大程度上减少依赖下载速度与异常错误,建议使用。

结语

感谢您的阅读!希望本文带给您有价值的信息。

如果对您有帮助,请「点赞」支持,并「关注」我的主页获取更多后续相关文章。同时,也欢迎「收藏」本文,方便以后查阅。

写作不易,我会继续努力,提供有意义的内容。感谢您的支持和关注!

目录
相关文章
|
6月前
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章介绍了npm的基础知识和常用命令,包括安装包、查看包信息、管理依赖等操作,并提供了如何删除npm安装的镜像以及如何彻底删除node_modules文件夹的具体步骤。
208 2
|
3月前
node环境之当我们遇到需要付费的依赖库@fortawesome/fontawesome-pro导致npm install无法进行怎么办-fontawesome-pro依赖库
node环境之当我们遇到需要付费的依赖库@fortawesome/fontawesome-pro导致npm install无法进行怎么办-fontawesome-pro依赖库
86 3
node环境之当我们遇到需要付费的依赖库@fortawesome/fontawesome-pro导致npm install无法进行怎么办-fontawesome-pro依赖库
|
8月前
|
缓存 资源调度 持续交付
在清空NPM缓存后,检查是否所有依赖都已正确安装
在清空NPM缓存后,检查是否所有依赖都已正确安装
|
3月前
|
存储 资源调度 JavaScript
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具。npm 是官方默认的包管理器,提供依赖管理、安装和更新等功能;cnpm 是由阿里巴巴开发的 npm 镜像,专为中国大陆用户优化,解决下载速度慢的问题;pnpm 通过硬链接技术提高安装速度并节省磁盘空间,特别适合磁盘资源紧张的环境。三者命令类似,但各有特色,开发者可根据需求选择合适的工具。
290 5
|
6月前
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章是关于npm包管理工具的学习、使用指南,包括npm概述、基础命令和如何安装webpack。
162 3
npm学习一:npm 包管理工具 学习、使用。
|
6月前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
850 3
|
6月前
|
缓存 资源调度 持续交付
在清空NPM缓存后,我如何检查是否所有依赖都已正确安装?
【10月更文挑战第5天】在清空NPM缓存后,我如何检查是否所有依赖都已正确安装?
|
6月前
|
缓存 前端开发 JavaScript
前端架构思考:代码复用带来的隐形耦合,可能让大模型造轮子是更好的选择-从 CDN 依赖包被删导致个站打不开到数年前因11 行代码导致上千项目崩溃谈谈npm黑洞 - 统计下你的项目有多少个依赖吧!
最近,我的个人网站因免费CDN上的Vue.js包路径变更导致无法访问,引发了我对前端依赖管理的深刻反思。文章探讨了NPM依赖陷阱、开源库所有权与维护压力、NPM生态问题,并提出减少不必要的依赖、重视模块设计等建议,以提升前端项目的稳定性和可控性。通过“left_pad”事件及个人经历,强调了依赖管理的重要性和让大模型代替人造轮子的潜在收益
|
7月前
|
JavaScript
使用npm,快速构建第一个vue项目
本文介绍了如何使用npm快速构建第一个Vue项目。步骤包括确保安装了Node.js并且配置了正确的环境变量,创建一个空文件夹并使用VSCode打开,通过VSCode的终端执行`npm init vue@latest`命令以初始化项目,选择默认配置即可。接着安装项目依赖并启动开发服务器,最后通过浏览器访问开发服务器提供的本地地址查看项目运行结果。文章还提供了相关代码和操作截图。
|
7月前
|
缓存 JavaScript 前端开发
8种方法解决vue创建项目报错:command failed: npm install --loglevel error
该文章提供了八种解决Vue项目创建时遇到的`command failed: npm install --loglevel error`错误的方法,包括清理缓存、更换npm源、重新安装Node.js等措施。
8种方法解决vue创建项目报错:command failed: npm install --loglevel error

热门文章

最新文章

推荐镜像

更多