Skip to content

Button 按钮

默认高度 32px,与筛选控件一致(--rd-control-height)。 业务直接使用 el-button;「主按钮 + ⋯」用 RdButtonGroupMore。 锚点对齐 Design System Showcase。

与筛选同高

筛选外壳与按钮同高对齐。

状态
全部

按钮

按钮组

并列按钮用 el-button-group;「主按钮 + ⋯」用 RdButtonGroupMore

按钮组变体

列表按钮

筛选批量按钮

API

el-button

按钮 API 见 Element Plus Button

RdButtonGroupMore Attributes

属性名说明类型默认值
title主按钮文案;有值时渲染主按钮string
icon主按钮图标(业务传入,如 Lucide 组件)Component
children下拉子项;空则不显示 ⋯RdButtonGroupMoreItem[]
type按钮类型'primary' | 'success' | 'warning' | 'danger' | 'info' | ''''
size尺寸'large' | 'default' | 'small'default
trigger⋯ 下拉触发方式'click' | 'hover'click
ariaLabel⋯ 按钮无障碍标签string'更多'
showTimeouthover 时展开延迟(ms)number80
hideTimeouthover 时收起延迟(ms)number120

RdButtonGroupMoreItem

children 数组元素类型。

属性名说明类型默认值
title子项文案string
icon子项图标(业务传入,如 Lucide 组件)Component
onClick点击回调;与 command 事件可并存() => void
show是否展示该子项booleantrue
disabled是否禁用booleanfalse
divided项前是否显示分割线booleanfalse
commandcommand 事件载荷;缺省时取 titlestring | number | Record<string, unknown>

RdButtonGroupMore Events

事件名说明类型
click主按钮点击(event: MouseEvent) => void
command下拉项点击;载荷为 item.command ?? item.title(cmd: string | number | Record<string, unknown>) => void

全局样式说明

引入 @rd-element/ui/dist/style.css 后,业务中所有 <el-button> / <el-button-group> 都会套用同一套皮肤。

ts
import 'element-plus/dist/index.css'
import '@rd-element/ui/dist/style.css' // 须在 EP 样式之后

主题变量

css
:root {
  --rd-color-primary: #ea543f;
  --rd-control-height: 32px;
  --rd-radius-base: 8px;
  --rd-color-border-strong: #cdd1da;
}

依赖说明

  • vue ^3.5.0、element-plus ^2.8.0、@lucide/vue ^1.0.0 为 peerDependencies
  • 业务需引入 EP 基础样式,再引入库覆盖层