R后悔药 Rue.js
  • 首页
    • 深度指南
    • 实战例子
    • 快速上手
    • 路由指南
    • 术语表
    • 错误代码参考
  • API
    • 合作伙伴
    • 插件
    • 组件库
    • 工具链
    • Text.js
    • 新闻简报
    • 常见问题
    • 团队
    • 版本发布
    • 社区指南
    • 行为规范
    • 隐私政策
  • 赞助
  • 合作伙伴
设置
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window

Button 按钮

type负责视觉类型,color负责主题色,再用shape、icon、loading补足交互细节。

何时使用

  • 需要一个通用操作按钮,并希望颜色、类型、形状和状态能拆开表达。
  • 需要在表单里区分视觉类型type和原生提交类型htmlType。
  • 需要统一处理图标按钮、加载按钮、链接按钮和整行按钮。

# 类型

type 现在直接对应视觉类型。

# 响应式尺寸

把基础的响应式按钮演示保持回来,统一改成 size + className 的方式。

# 颜色色板

颜色演示展示,但统一改成 color 语义。

# 风格矩阵

把基础的 soft、outline、dash 演示融合成统一的 type 展示。

Filled
Outlined
Dashed
Neutral on light surface

# 危险态

danger 是快捷开关,也可以直接通过 color='danger' 控制。

# 图标与图标位置

icon 和 iconPlacement 用来组织图标按钮与带文案按钮。

# 加载状态

loading 会锁定按钮;对象写法可以替换默认加载图标。

# 点击事件

onClick 会透传原生点击事件,适合命令触发、埋点和分组按钮内交互。

Track jump
click count: 0
last action: 未触发

# 尺寸与形状

size 管尺寸,shape 管轮廓形态。

Sizes
Shapes

# 按钮组合

提供与常见 ButtonGroup 类似的分组能力,这里统一用 Button.Group。

Basic
Icons
Circle
Size

# 状态与布局

把基础的 active、disabled、wide、block 示例也融合到当前页面。

States
Disabled link
Layout

# 根节点与表单行为

默认渲染 button,同时保持链接根节点、div 根节点和表单行为示例。

Anchor
Div button
submit count: 0
Jump to API

# 场景组合

把图标、变体、布局属性组合在一起,可以很快搭出操作条。

# 登录按钮

把基础的 provider 登录按钮演示融合回来,统一改成 icon + block + className 的新 API 写法。

API

当前页面展示的是 Button 与 Button.Group 的完整可用 API。

推荐使用顺序:type->color->shape-> size->loading->disabled。

Button

属性说明类型默认值
active激活态,追加 btn-activebooleanfalse
as指定渲染标签,可选 button、a、div'button' | 'a' | 'div''button'
block整行按钮,宽度撑满容器booleanfalse
color颜色层,danger 会映射到 error 按钮色'default' | 'danger' | 'neutral' | 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error''default'
danger危险态快捷开关,未设置 color 时等价于 color="danger"booleanfalse
disabled禁用按钮;a 和 div 根节点也会输出禁用语义booleanfalse
href传入后默认以 a 标签渲染string-
htmlType原生 button 的 type'button' | 'submit' | 'reset''button'
icon图标节点any-
iconPlacement图标位置'start' | 'end''start'
loading支持 boolean 或对象写法,可自定义加载图标boolean | { delay?: number; icon?: any }false
onClick点击按钮时的回调;disabled 或 loading 时不会触发(event: MouseEvent) => void-
shape按钮形状'default' | 'square' | 'circle' | 'round''default'
size尺寸,支持 xs 到 xl,以及 small / middle / large 别名'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'small' | 'middle' | 'medium' | 'large'-
target链接目标窗口,仅 a 标签生效string-
type视觉类型,直接替代基础的 variant 语义'solid' | 'filled' | 'outlined' | 'dashed' | 'text' | 'link''solid'
wide宽按钮,追加 btn-widebooleanfalse

Button.Group

属性说明类型默认值
as指定按钮组根节点标签any'div'
size统一同步组内按钮尺寸'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'small' | 'middle' | 'medium' | 'large'-
shape统一同步组内按钮轮廓;circle 在分组场景下会映射为圆角组合样式'default' | 'square' | 'circle' | 'round'-
direction按钮组排列方向'horizontal' | 'vertical''horizontal'
block让按钮组宽度撑满容器booleanfalse
className自定义根节点类名string-

FAQ

为什么有 type 还需要 htmlType?

type负责按钮视觉类型,htmlType负责原生 button 行为。视觉和提交语义拆开之后, 表单场景会更直接。

type 和 color 应该怎么分工?

type负责视觉类型,比如outlined、filled、text。color负责主题色,比如primary、secondary、danger。

大多数场景可以先定颜色, 再根据密度和层级选择solid、outlined、filled或text。

loading 对象里的 delay 会生效吗?

当前组件支持loading的对象写法和自定义icon。delay字段已保持在配置结构里,后续如果补充延迟显示策略,可以直接在当前接口上继续扩展。

Button.Group 会覆盖子按钮哪些属性?

组级只会统一同步size和shape,方便在一组按钮上集中控制尺寸和轮廓。 每个子按钮自己的color、type、disabled、onClick仍然在各自的 Button上配置。

页内导航
页内导航
文档
  • 深度指南
  • 实战例子
  • 快速上手
  • 术语表
  • 错误码参照表
关于
  • 常见问题
  • 团队
  • 版本发布
  • 社区指南
生态
  • 插件
  • 组件库
  • 路由指南
  • Text.js
© 2024-2026 Xiangmin Liu
Rue.JS