UI Design System
build dev

Badge

表示数量、提醒或附着状态。中文惯用名:徽标。
稳定本期新增已接入

元信息

字段值
规范 IDcomponent.badge
名称Badge
二级分类通用(general)
用途表示数量、提醒或附着状态
描述中文惯用名:徽标。

预览

静态结构:渲染为 <span data-slot="badge">(inline-flex w-fit 圆角边框、px-2 py-0.5、text-xs font-medium);variant 四档由 cva 映射底色——default 主色实心、secondary 次要色实心、destructive 危险色实心、outline 透明底 + border-border;文本取 text 属性。当前适配器为静态文本徽标形态,不内置角标定位(附着于图标 / 头像右上角的角标需外层容器自行定位)。

DSL 结构

DslNode
{
  "type": "Badge",
  "props": {
    "text": "次要",
    "variant": "secondary"
  }
}

何时用

何时使用

  • 表达数量、提醒或附着状态:未读条数、待办数量、对象上的状态备注。
  • 需要与主体并列的轻量标记:卡片标题旁的「新」「测试版」、列表项后的计数。
  • 需要视觉权重低于正文的短标记:variant 四档控制底色强弱(default / secondary / destructive / outline)。

何时不用

  • 标记分类、属性或可移除条件:使用 Tag(Badge 不与 Tag 混用)。
  • 表达运行 / 审核等业务状态(带状态点 + 文本):使用 Status。
  • 需要点击的操作入口或筛选条件:使用 Button / Tag,Badge 只读不可交互。

变体

变体视觉形态适用场景
default主色实心最高权重的短标记(如「新」)
secondary次要色实心中性计数、普通备注
destructive危险色实心异常计数、需要立即关注的数量
outline透明底 + 描边低干扰标记、与浅色背景并置

API 属性

属性类型默认值说明
textstring—徽标文本(计数 / 短标记)
variant`'default''secondary''destructive'
className / stylestring / CSSProperties—通用:根节点 class 合并 / 内联样式(角标定位常在此声明)

使用规范

  • 文案极短:计数直接用数字,标记不超过 4 个字。
  • 同一语义固定同一 variant(如危险计数恒为 destructive),不随场景换色。
  • 计数超量级时收敛显示(如「99+」),避免徽标宽度撑破布局。
  • 不在 Badge 上挂交互;需要点击时改用 Button 或 Tag。

正例

  • ✓ 菜单项:标题后 Badge text="12" 表示待办数量。
  • ✓ 卡片标题:Badge variant="outline" text="Beta" 标注功能阶段。

反例

  • ✕ 用 Badge 标记商品分类或可移除筛选条件(应使用 Tag)。
  • ✕ 用 Badge 表达服务运行状态(应使用 Status)。

Design Token 映射

不适用:组件 tokenRefs 为空:样式 Token 数据尚未接入,三层映射(Primitive → Semantic → Component)待样式 Token 接入后回填。