多选框组件
在 Taro 文件中引入组件
import { AtCheckbox } from 'taro-ui-vue3'
// 或从 lib 目录按需引入
import { AtCheckbox } from 'taro-ui-vue3/lin'
组件依赖的样式文件(仅按需引用时需要)
@import "taro-ui-vue3/dist/style/components/checkbox.scss";
说明:
-
该组件为受控组件,开发者可通过
v-model:selected-list
来更新selectedList
值变化。 -
由于小程序组件化的限制,AtCheckbox 嵌套在 AtForm 或原生小程序组件 Form 中的时候,onSubmit 事件获得的 event 中的 event.detail.value 始终为空对象,开发者要获取数据,可以自行在页面的 state 中获取
<template>
<at-checkbox
:options="checkboxOptions"
v-model:selected-list="checkedList"
/>
</template>
<script>
import { AtCheckbox } from 'taro-ui-vue3'
export default {
name: 'CheckBoxDemo',
components: { AtCheckbox }
data() {
return {
checkedList: ['list1'],
checkboxOptions: [{
value: 'list1',
label: 'iPhone X',
desc: '部分地区提供电子普通发票,用户可自行打印,效力等同纸质普通发票,具体以实际出具的发票类型为准。'
},{
value: 'list2',
label: 'HUAWEI P20'
},{
value: 'list3',
label: 'OPPO Find X',
desc: '部分地区提供电子普通发票,用户可自行打印,效力等同纸质普通发票,具体以实际出具的发票类型为准。',
disabled: true
},{
value: 'list4',
label: 'vivo NEX',
desc: '部分地区提供电子普通发票,用户可自行打印,效力等同纸质普通发票,具体以实际出具的发票类型为准。',
disabled: true
}]
}
}
}
</script>
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
selectedList | 选中选项列表, 列表项应为 CheckboxOption 的 value 字段。支持 v-model,需通过 v-model:selectedList 来更新 selectedList 值,必填 |
Array<string> |
- | - |
options | 复选框选项 CheckboxOption 列表,CheckboxOption 字段详情见下表 |
Array<CheckboxOption<T>> |
- | - |
参数 | 说明 | 类型 | 可选值 | 默认值 | 可选或必填 |
---|---|---|---|---|---|
value | 选项标识符,必须保证唯一 | String | - | - | 必填 |
label | 选项标题 | String | - | - | 必填 |
desc | 选项描述,显示在标题下方的文字 | String | - | - | 可选 |
disabled | 是否禁止点击 | Boolean | - | false | 可选 |
事件名称 | 说明 | 返回参数 |
---|---|---|
onUpdate:selectedList | 使用 v-model:selectedList 时自动触发 |
选中的 CheckboxOption.value 列表 |