Skip to main content
Version: 1.x

Button

按钮

属性及支持度

H5ReactNative属性名类型默认值说明
typeStringdefault按钮的样式类型
sizeStringdefault按钮的大小 px
plainBooleanfalse按钮是否镂空,背景色透明
disabledBooleanfalse是否禁用
loadingBooleanfalse名称前是否带 loading 图标
X (支持 hoverStyle 属性,但框架未支持 hoverClass)hoverClassStringbutton-hover指定按钮按下去的样式类。当 hover-class='none' 时,没有点击态效果
hoverStartTimeNumber20按住后多久出现点击态,单位毫秒
hoverStayTimeNumber70手指松开后点击态保留时间,单位毫秒
XXonGetUserInfoHandler微信小程序open-type='getUserInfo'时,用户点击该按钮,会返回获取到的用户信息,从返回参数的 detail 中获取到的值同 wx.getUserInfo

其他相关属性请看各小程序官方文档

微信小程序 Button

百度小程序 Button

支付宝小程序 Button

字节跳动小程序 Button

示例:
import Taro, { Component } from '@tarojs/taro'
import { View, Text, Button } from '@tarojs/components'

export default class PageButton extends Component {
state = {
btn: [
{
text: '页面主操作 Normal',
size: 'default',
type: 'primary'
},
{
text: '页面主操作 Loading',
size: 'default',
type: 'primary',
loading: true,
},
{
text: '页面主操作 Disabled',
size: 'default',
type: 'primary',
disabled: true,
},
{
text: '页面次要操作 Normal',
size: 'default',
type: 'default'
},
{
text: '页面次要操作 Disabled',
size: 'default',
type: 'default',
disabled: true,
},
{
text: '警告类操作 Normal',
size: 'default',
type: 'warn'
},
{
text: '警告类操作 Disabled',
size: 'default',
type: 'warn',
disabled: true,
}
]
}
render () {
return (
<View className='container'>
{this.state.btn.map(item => {
return (
<Button
size={item.size ? item.size : ''}
type={item.type ? item.type : ''}
loading={item.loading ? item.loading : false}
disabled={item.disabled ? item.disabled : false}
>
{item.text}
</Button>
)
})}
<Button className='btn-max-w' plain type='primary'>按钮</Button>
<Button className='btn-max-w' plain type='primary' disabled>不可点击的按钮</Button>
<Button className='btn-max-w' plain >按钮</Button>
<Button className='btn-max-w' plain disabled >按钮</Button>
<Button size='mini' type='primary'>按钮</Button>
<Button size='mini' >按钮</Button>
<Button size='mini' type='warn'>按钮</Button>
</View>
)
}
}