npm源管理工具:nrm的基础使用

nrm是什么

nrmNPM registry manager)是 npm镜像源 管理工具,使用它可以快速切换 npm 的源。

npm 默认情况下是使用npm官方源(https://registry.npmjs.org/),属于国外的网址,国内使用这个源下载东西特别慢,一般我们都会用淘宝的npm源(https://registry.npm.taobao.org

淘宝 npm 的镜像网站

  • 查看当前npm源:npm config ls

  • 切换npm源:
    npm set registry https://registry.npm.taobao.org/ 但是注意! 这个源已经到期,不能用了!

目前需要使用最新npm源: https://registry.npmmirror.com

淘宝命令工具 cnpm 使用(不推荐)

npm安装cnpm:npm install -g cnpm --registry=https://registry.npmmirror.comcnpm

查看cnpm是否安装成功: cnpm -v

为什么不推荐使用cnpm?

go 复制代码
使用 `npm` 作为前端项目包管理工具的话,通常我们前端项目中都会有 `package-lock.json` 文件。
使用 `npm` 和 `cnpm` 来安装依赖包是有区别的,这两个命令对其有一定的影响:

> -   `cnpm i`不受 `package-lock.json` 影响,只会根据 `package.json` 进行下载安装。
> -   `cnpm i xxx@xxx`不会更新到 `package-lock.json` 中去。
> -   `npm i xxx@xxx` 会更新到 `package-lock.json` 中去。

在多人协作维护的项目中,`package-lock.json` 是必不可少的。是为了确保不同开发者安装的包及其依赖保持一致,同时也是降低不同版本 npm 包给项目稳定性带来的影响。尤其是一些不遵循[语义化版本控制](https://www.jianshu.com/p/69a98fd20c83)的第三方 npm 包,就很容易被坑。

nrm安装

全局安装nrm,终端输入: npm install -g nrm

  • 安装nrm失败:

    如果使用npm安装nrm失败或长时间没反应,注意先查看当前npm源是什么 npm config ls,我这里安装失败是因为当前npm的源还是旧的 https://registry.npm.taobao.org

    切换最新npm源: npm config set registry https://registry.npmmirror.com

    查看是否成功:npm config get registry

  • 重新安装nrm安装成功:

nrm使用

  • 查看所有源 nrm ls

    其中带*号的是当前使用的源,上图表明当前源为 taobao

    或者直接使用nrm current命令,也可以查看当前源:

  • 使用源 nrm use taobao

  • 添加源 nrm add <registry源名称> <url源地址>

  • 删除源 nrm del <registry>

  • 测试源响应时间 nrm test <registry>

注意切换源之后 ,我们安装依赖时仍使用 npm i xxx 的方式来进行安装。

相关推荐
三十而立洋13 分钟前
深入理解 npm:从核心机制到常用命令全解析
前端·前端工程化
Canace16 分钟前
最新版 Codex 工作流的问题
前端·人工智能·agent
变与不变80619 分钟前
引用类型、内存原理与对象
开发语言·前端·javascript
jearry20 分钟前
给 C++ 老程序补现代 UI:WebView2 多入口资源加载与虚拟主机名实践
前端
打呵欠的猫23 分钟前
让 AI 帮你写 Git Commit Message:从"fix bug"到语义化提交只需一个 Hook
前端·ai编程
labixiong24 分钟前
CSS 锚点定位实测:零 JS 实现气泡跟随,自动翻转很香但暗藏 3 个致命坑
前端·css
qibmz25 分钟前
用 DeepSeek 给 GitHub 仓库加 PR 自动 Review
前端
计算机魔术师25 分钟前
幻觉率从 4.2% 降到 2% 又退回,GPT-6 Astra 到底在藏什么
前端
梨想橙汁27 分钟前
Git 常用命令大全:提交、查看日志、版本回退、文件撤销
前端·javascript
Amos_Web32 分钟前
Rspack 源码解析(三):从入口到依赖图,读懂 Make 阶段的 Rust 任务循环
前端·rust