@eagami/ui

中文文档
5.82.1发布于 2026/11/13MITTypeScriptES Module零依赖构建来源已验证近 30 天下载 3667

轻量级,可访问,可主题的 Angular UI 组件库和基于 CSS 自定义属性的图标集

中文使用文档
文档目录8 节
  1. 为什么是Eagami UI
  2. 安装
  3. 使用
  4. 主题
  5. 表单
  6. 部署
  7. 测试
  8. 链接

埃加米大学

Eagami UI logo

npm version license Storybook WCAG 2.2 AA, tested with axe-core

@eagami/ui 是一个轻量级,可访问的角构件库和设计系统. 智能默认出自"盒子",具有完全自定义的设计来适应任何品牌.

文档 • 妇女 构成部分 • 妇女 图标
设计符号 • 妇女 主题构建器 • 妇女 国际化 • 妇女 无障碍

为什么是Eagami UI

你品牌的主题. 给它每个角色一个颜色,它产生一个完整的,对比度检查的调色板.

轻取. 没有运行时间依赖性, 没有 CSS 框架, 和独立的无副作用组件, 所以您的应用程序只捆绑它导入的东西 .

无障碍和本地化. 每个组件都与WCAG 2.2 AA相会,并配有完整的键盘支持和自有的轴心测试套件. 使用15种语言的内建文本船,您可在运行时切换.

你的拥有. Plain Angular 和 CSS 没有锁定: 读取,复制, 或叉出任何组件, 如您的应用程序的其余部分.

现代角. 信号和原生控制流贯穿全过程,具有SSR安全渲染,先发后发和水分.

安装

ng add @eagami/ui

示意图安装软件包并注册全局样式表、字体和 provideStaleBuildReload()用手把它绑起来,看 设置。 。 。 .

使用

import { ButtonComponent } from '@eagami/ui';

@Component({
  imports: [ButtonComponent],
  template: `<ea-button (clicked)="save()">Save</ea-button>`,
})
export class MyComponent {
  save() {}
}

主题

每个角色传递一色 provideEagamiUi数字 :

bootstrapApplication(AppComponent, {
  providers: [
    provideEagamiUi({
      palette: {
        primary: { base: '#2563eb' },
        secondary: { base: '#f97316' },
      },
    }),
  ],
});

焦点环跟随主色相. 当品牌读取错误或警告时, 给焦点一个自己的颜色 focus: { base: '#2563eb' } 中标 palette。 。 。 .

其他的都是 CSS 定制属性,您可以覆盖 。 见 设计符号。 。 。 .

表单

showErrorsOn 当窗体组件显示验证错误时设置 :

  • 'change' (默认值):一旦用户更改了字段并离开,或者提交表单. 用户标签过去的字段保持安静,一个新的错误等待焦点离开字段.
  • 'blur':用户一离开球场,甚至保持不变,而一个新的出错仍然会等焦点离开球场.
  • 'touch':用户一旦离开球场,甚至没有改变,并在之后编辑时活起.

设置为应用宽度 forms,或与 showErrorsOn 输入每个窗体组件的:

provideEagamiUi({ forms: { showErrorsOn: 'touch' } });

部署

在部署上留下的标签仍然运行着旧的建筑,所以它懒惰的负载下一页会要求删除的部署文件. provideStaleBuildReload() 从 @eagami/ui/router 装入新构造上的全部页面, 只试一次:

bootstrapApplication(AppComponent, {
  providers: [provideRouter(routes), provideStaleBuildReload()],
});

过 version 财务报告和审定财务报表 onReport 以记录每次重新装入的结果,并检查 isStaleBuildReloadError(error) 以保留它从错误报告中解答的错误.

测试

<ea-dialog> 财务报告和审定财务报表 <ea-drawer> 以当地人为基础 <dialog> 元素,以及 @eagami/ui/testing 让他们在jsdom工作, 缺乏 showModal() 财务报告和审定财务报表 close()调用 installNativeDialogShim() 测试设置文件的一次 :

import { installNativeDialogShim } from '@eagami/ui/testing';

installNativeDialogShim();

更改日志 • 妇女 v4.x 迁移指南 • 妇女 支助 • 妇女 许可证

版本与发布记录

@eagami/ui 共发布 191 个版本,首次发布于 2026/03/09;过去 12 个月发布了 191 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
5.82.1latest2026/11/13今天
5.82.02026/11/058 天前
5.81.12026/11/0211 天前
5.81.02026/11/0112 天前
5.80.02026/10/3113 天前
5.79.02026/10/2915 天前

关于 @eagami/ui 的常见问题

@eagami/ui 是什么?

轻量级,可访问,可主题的 Angular UI 组件库和基于 CSS 自定义属性的图标集

如何安装 @eagami/ui?

在项目目录运行 npm install @eagami/ui,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@angular/core(^21.0.0 || ^22.0.0)、@angular/forms(^21.0.0 || ^22.0.0)、@angular/common(^21.0.0 || ^22.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@eagami/ui 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@eagami/ui 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@eagami/ui 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@eagami/ui 可以商用吗?

@eagami/ui 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@eagami/ui 的下载量有多少?

根据 npm 官方下载统计,@eagami/ui 在 2026/10/13 – 2026/11/11 这 30 天内被下载 3,667 次,日均约 122 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@eagami/ui 还在维护吗?

最新版本 5.82.1 发布于 2026/11/13(今天);至今共发布 191 个版本,其中过去 12 个月发布了 191 个;首次发布于 2026/03/09。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。