README.md 7.4 KB


title: Button 按钮 description: 用于开启一个闭环的操作任务,如“删除”对象、“购买”商品等。 spline: base

isComponent: true

引入

全局引入,在 miniprogram 根目录下的app.json中配置,局部引入,在需要引入的页面或组件的index.json中配置。

"usingComponents": {
  "t-button": "tdesign-miniprogram/button/button",
  "t-button-group": "tdesign-miniprogram/button-group/button-group"
}

代码演示

基础按钮

基础类型分为主按钮、次按钮、文字按钮

次按钮

使用场景:在用户进行的操作为流程中的辅助操作,或者进行不那么重要的交互行为时,选择用次按钮;次要按钮通常和主要按钮一起出现

主按钮

使用场景:大部分场景都可以使用,例如反馈页、表单页、对话框,一个页面建议最多只出现一个主按钮;

文字按钮

使用场景:它的操作通常和其旁边内容相关,通常出现在标题旁、字段旁、列表最下方

{{ base }}

带图标按钮

{{ icon-btn }}

不同尺寸

{{ size }}

API

Button Props

名称 | 类型 | 默认值 | 说明 | 必传 -- | -- | -- | -- | -- block | Boolean | false | 是否为块级元素 | N content | String / Slot | - | 按钮内容 | N custom-dataset | Any | - | 自定义 dataset,可通过 event.detail.currentTarget.dataset.custom 获取。当open-type 为 share 时,可在 onShareAppMessage 事件的 event.target.dataset.custom 中看到传入的值。TS 类型:any | N disabled | Boolean | false | 是否禁用按钮 | N external-classes | Array | - | 组件类名。['t-class', 't-class-icon', 't-class-loading'] | N ghost | Boolean | false | 是否为幽灵按钮(镂空按钮) | N icon | String | - | 图标名称 | N icon-props | Object | {} | 图标属性,透传至 icon | N loading | Boolean | false | 是否显示为加载状态 | N loading-props | Object | - | 加载loading属性,透传至loading。TS 类型:LoadingProps | N shape | String | rectangle | 按钮形状,有 4 种:长方形、正方形、圆角长方形、圆形。可选项:rectangle/square/round/circle | N size | String | medium | 组件尺寸。可选项:small/medium/large。TS 类型:SizeEnum | N theme | String | default | 组件风格,依次为品牌色、危险色。可选项:default/primary/danger | N type | String | - | 同小程序的 formType。可选项:submit/reset | N variant | String | base | 按钮形式,基础、线框、文字。可选项:base/outline/text | N open-type | String | - | 微信开放能力。
具体释义:
contact 打开客服会话,如果用户在会话中点击消息卡片后返回小程序,可以从 bindcontact 回调中获得具体信息,具体说明 (*小程序插件中不能使用*);
share 触发用户转发,使用前建议先阅读使用指引
getPhoneNumber 获取用户手机号,可以从 bindgetphonenumber 回调中获取到用户信息,具体说明 (*小程序插件中不能使用*);
getUserInfo 获取用户信息,可以从 bindgetuserinfo 回调中获取到用户信息 (*小程序插件中不能使用*);
launchApp 打开APP,可以通过 app-parameter 属性设定向 APP 传的参数具体说明
openSetting 打开授权设置页;
feedback 打开“意见反馈”页面,用户可提交反馈内容并上传日志,开发者可以登录小程序管理后台后进入左侧菜单“客服反馈”页面获取到反馈内容;
chooseAvatar 获取用户头像,可以从 bindchooseavatar 回调中获取到头像信息。
小程序官方文档。可选项:contact/share/getPhoneNumber/getUserInfo/launchApp/openSetting/feedback/chooseAvatar | N hover-stop-propagation | Boolean | false | 指定是否阻止本节点的祖先节点出现点击态 | N hover-start-time | Number | 20 | 按住后多久出现点击态,单位毫秒 | N hover-stay-time | Number | 70 | 手指松开后点击态保留时间,单位毫秒 | N lang | String | en | 指定返回用户信息的语言,zh_CN 简体中文,zh_TW 繁体中文,en 英文。。
具体释义:
en 英文;
zh_CN 简体中文;
zh_TW 繁体中文。
小程序官方文档。可选项:en/zh_CN/zh_TW | N session-from | String | - | 会话来源,open-type="contact"时有效 | N send-message-title | String | 当前标题 | 会话内消息卡片标题,open-type="contact"时有效 | N send-message-path | String | 当前分享路径 | 会话内消息卡片点击跳转小程序路径,open-type="contact"时有效 | N send-message-img | String | 截图 | 会话内消息卡片图片,open-type="contact"时有效 | N app-parameter | String | - | 打开 APP 时,向 APP 传递的参数,open-type=launchApp时有效 | N show-message-card | Boolean | false | 是否显示会话内消息卡片,设置此参数为 true,用户进入客服会话会在右下角显示"可能要发送的小程序"提示,用户点击后可以快速发送小程序消息,open-type="contact"时有效 | N bindgetuserinfo | Eventhandle | - | 用户点击该按钮时,会返回获取到的用户信息,回调的 detail 数据与wx.getUserInfo返回的一致,open-type="getUserInfo"时有效 | N bindcontact | Eventhandle | - | 客服消息回调,open-type="contact"时有效 | N bindgetphonenumber | Eventhandle | - | 获取用户手机号回调,open-type=getPhoneNumber时有效 | N binderror | Eventhandle | - | 当使用开放能力时,发生错误的回调,open-type=launchApp时有效 | N bindopensetting | Eventhandle | - | 在打开授权设置页后回调,open-type=openSetting时有效 | N bindlaunchapp | Eventhandle | - | 打开 APP 成功的回调,open-type=launchApp时有效 | N bindchooseavatar | Eventhandle | - | 获取用户头像回调,open-type=chooseAvatar时有效 | N

Button Events

名称 | 参数 | 描述 -- | -- | -- tap | event | 点击时触发