跳到主要内容

按钮 Button

按钮用于触发一个操作,如路由跳转、打开弹框、提交表单等

安装使用

import { TiButton } from '@titian-design/mobile-react'

用法示例

按钮类型
默认警告成功错误信息
codesanbox
copy
code
按钮尺寸
高度48px高度56px高度64px高度80px高度96px
codesanbox
copy
code
按钮圆角
胶囊按钮默认圆角按钮直角按钮
codesanbox
copy
code
禁用按钮
面性强调面性次要线框按钮文字按钮
codesanbox
copy
code
搭配图标
左图标右图标
codesanbox
copy
code
按钮风格
面性强调面性次要线框按钮文字按钮
codesanbox
copy
code
按钮颜色
确定确定确定渐变按钮
codesanbox
copy
code
按钮边框
一像素边框
发丝线,仅适用 variant='outlined' 风格
codesanbox
copy
code
块级按钮
块级定宽自适应宽度
codesanbox
copy
code
加载状态
提交
codesanbox
copy
code

TiButton API

属性 Properties

名称类型必填默认值说明备注
typestringprimary按钮类型,可选值为 primary info error warning success simplesimple仅在variant: outlined 模式下可用,灰色调
sizestringbig按钮尺寸,可选值为 tiny small medium big large分别对应高度48px 56px 64px 80px 96px-
variantstringcontained按钮风格,可选值为 contained filled outlined text semi-outlined-
colorstringtheme.color.brand.1000按钮颜色,十六进制色值 #ffffff linear-gradient渐变色渐变色仅在variant:contained模式下可用,color的权重高于type
shapestringround按钮圆角风格,可选值为 capsule round rect-
hairlinebooleantrue当 size 为 tiny small medium,是否使用发丝 1px 边框-
disabledbooleanfalse是否禁用按钮-
loadingbooleanfalse是否显示为加载状态-
blockbooleanfalse将按钮宽度调整为其父宽度的选项-
prefixIconstring-按钮文字左侧图标-
suffixIconstring-按钮文字右侧图标-
loadingSizenumber30加载图标大小,单位 px-
loadingTypestringcircular加载图标类型,可选择circular spinner-
loadingTextstring-加载图标文字-
extStylestring | Record<string, string>-根节点样式-

事件 Events

名称参数列表描述备注
onClick(e: Event) => void点击按钮,且按钮状态不为加载或禁用时触发-

插槽 Slots

名称说明备注
default默认插槽-

外部样式类 External Classes

名称说明备注
extClass根节点样式类-
loadingClass加载图标样式类-
prefixIconClass左侧图标样式类-
suffixIconClass右侧图标样式类-

CSS 变量 CSS Variable

变量 默认值说明备注
--button-padding-vtheme.spacing.vertical.v2垂直方向内边距(size="tiny")-
theme.spacing.vertical.v3垂直方向内边距(size="small")-
theme.spacing.vertical.v4垂直方向内边距(size="medium")-
theme.spacing.vertical.v5垂直方向内边距(size="big")-
theme.spacing.vertical.v7垂直方向内边距(size="large")-
--button-padding-htheme.spacing.horizontal.h3水平方向内边距(size="tiny")-
theme.spacing.horizontal.h5水平方向内边距(size="small")-
theme.spacing.horizontal.h6水平方向内边距(size="medium")-
theme.spacing.horizontal.h8水平方向内边距(size="big")-
theme.spacing.horizontal.h11水平方向内边距(size="large")-
--button-font-sizetheme.fontSize.t4字号(size="tiny")-
theme.fontSize.t5字号(size="small")-
theme.fontSize.t5字号(size="medium")-
theme.fontSize.t6字号(size="big")-
theme.fontSize.t8字号(size="large")-
--button-radiustheme.borderRadius.r2圆角-
--button-margin0整体外边距-
--button-line-heighttheme.lineHeight.multiline.t2行高(size="tiny")-
theme.lineHeight.multiline.t2行高(size="small")-
theme.lineHeight.multiline.t2行高(size="medium")-
theme.lineHeight.multiline.t4行高(size="big")-
theme.lineHeight.multiline.t4行高(size="large")-
--button-font-weighttheme.fontWeight.semibold字重-
--button-icon-sizetheme.fontSize.t6icon尺寸(size="tiny")-
theme.fontSize.t8icon尺寸(size="small")-
theme.fontSize.t8icon尺寸(size="medium")-
theme.fontSize.t8icon尺寸(size="big")-
theme.fontSize.t10icon尺寸(size="large")-
--button-icon-gaptheme.spacing.gap.g2文字和图标间距-