跳转到内容

Button 按钮

何时使用

标记了一个(或封装一组)操作命令,响应用户点击行为,触发相应的业务逻辑。

在 Ant Design 中我们提供了五种按钮。

  • 🔵 主按钮:用于主行动点,一个操作区域只能有一个主按钮。
  • ⚪️ 默认按钮:用于没有主次之分的一组行动点。
  • 😶 虚线按钮:常用于添加操作。
  • 🔤 文本按钮:用于最次级的行动点。
  • 🔗 链接按钮:一般用于链接,即导航至某位置。

以及四种状态属性与上面配合使用。

  • ⚠️ 危险:删除/移动/修改权限等危险操作,一般需要二次确认。
  • 👻 幽灵:用于背景色比较复杂的地方,常用在首页/产品页等展示场景。
  • 🚫 禁用:行动点不可用的时候,一般需要文案解释。
  • 🔃 加载中:用于异步操作等待反馈的时候,也可以避免多次提交。

代码演示

语法糖

loading

颜色与变体

loading

按钮图标

loading

按钮图标位置

loading

按钮尺寸

loading

不可用状态

loading

加载中状态

loading

多个按钮组合

loading

幽灵按钮

loading

危险按钮

loading

Block 按钮

loading

移除两个汉字之间的空格

loading

API

通过设置 Button 的属性来产生不同的按钮样式,推荐顺序为:type -> shape -> size -> loading -> disabled

按钮的属性说明如下:

属性说明类型默认值版本
autoInsertSpace我们默认提供两个汉字之间的空格,可以设置 autoInsertSpacefalse 关闭booleantrue
block将按钮宽度调整为其父宽度的选项booleanfalse
classNames用于自定义组件内部各语义化结构的 class,支持对象或函数Record<SemanticDOM, string> | (info: { props })=> Record<SemanticDOM, string>
color设置按钮的颜色default | primary | danger | PresetColors
danger语法糖,设置危险按钮。当设置 color 时会以后者为准booleanfalse
disabled设置按钮失效状态booleanfalse
ghost幽灵属性,使按钮背景透明booleanfalse
href点击跳转的地址,指定此属性 button 的行为和 a 链接一致string-
htmlType设置 button 原生的 type 值,可选值请参考 HTML 标准submit | reset | buttonbutton
icon设置按钮的图标组件VNode-
iconPlacement设置按钮图标组件的位置start | endstart-
loading设置按钮载入状态boolean | { delay: number, icon: VNode }falseicon: 5.23.0
shape设置按钮形状default | circle | rounddefault
size设置按钮大小large | middle | smallmiddle
styles用于自定义组件内部各语义化结构的行内 style,支持对象或函数Record<SemanticDOM, CSSProperties> | (info: { props })=> Record<SemanticDOM, CSSProperties>-
target相当于 a 链接的 target 属性,href 存在时生效string-
type语法糖,设置按钮类型。当设置 variantcolor 时以后者为准primary | dashed | link | text | defaultdefault
onClick点击按钮时的回调(event: MouseEvent) => void-
variant设置按钮的变体outlined | dashed | solid | filled | text | link-

支持原生 button 的其他所有属性。

基于 MIT 许可发布