Checkbox/CheckboxGroup 多选项
vue
<template>
<ta-group title="基础用法">
<ta-cell label="默认">
<ta-checkbox />
</ta-cell>
<ta-cell label="带文案">
<ta-checkbox v-model:checked="checked">勾选</ta-checkbox>
</ta-cell>
<ta-cell label="默认激活">
<ta-checkbox checked>勾选</ta-checkbox>
</ta-cell>
<ta-cell label="自定义颜色">
<ta-checkbox checked activeColor="#8b1721">勾选</ta-checkbox>
</ta-cell>
<ta-cell label="禁用">
<ta-checkbox disabled>勾选</ta-checkbox>
</ta-cell>
</ta-group>
<ta-group title="CheckboxGroup">
<ta-cell label="默认">
<ta-checkbox-group v-model="groupValue">
<ta-checkbox v-for="item in groups" :key="item" :checkedValue="item">{{
item
}}</ta-checkbox>
</ta-checkbox-group>
</ta-cell>
<ta-cell label="内联">
<ta-checkbox-group v-model="groupValue" inline activeColor="#8b1721">
<ta-checkbox v-for="item in groups" :key="item" :checkedValue="item">{{
item
}}</ta-checkbox>
</ta-checkbox-group>
</ta-cell>
<ta-cell label="禁用">
<ta-checkbox-group :modelValue="['A']" disabled>
<ta-checkbox v-for="item in groups" :key="item" :checkedValue="item">{{
item
}}</ta-checkbox>
</ta-checkbox-group>
</ta-cell>
<ta-cell label="通过options设置">
<ta-checkbox-group v-model="groupValue" :options="groups" />
</ta-cell>
</ta-group>
<ta-group title="CheckboxGroup + Cell">
<ta-checkbox-group v-model="groupValue">
<ta-cell v-for="item in groups" :key="item" :label="'单元格 ' + item">
<template #icon>
<ta-checkbox circle :checkedValue="item" />
</template>
</ta-cell>
</ta-checkbox-group>
</ta-group>
<ta-group title="事件监听">
<ta-cell label="change">
<ta-checkbox-group @change="onChange">
<ta-checkbox v-for="item in groups" :key="item" :checkedValue="item">{{
item
}}</ta-checkbox>
</ta-checkbox-group>
</ta-cell>
</ta-group>
</template>
<script lang="ts">
import { defineComponent, ref } from 'vue'
import { showToast } from '@/index'
export default defineComponent({
name: 'ExpCheckbox',
setup() {
const checked = ref(false)
const groupValue = ref(['A', 'C'])
const groups = ref(['A', 'B', 'C'])
function onChange(value: (string | number)[]) {
console.log('change', value)
showToast(`Change Value: ${value}`)
}
return {
checked,
groupValue,
groups,
onChange
}
}
})
</script>
Import
js
import { TaCheckbox, TaCheckboxGroup } from 'tantalum-ui-mobile'
具体的引入方式可以参考引入组件。
Import Type
组件导出的类型定义:
ts
import type { CheckboxOptionItem } from 'tantalum-ui-mobile'
Checkbox
Checkbox Props
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
v-model:checked | boolean | false | 否 | 当前是否选中,可用来设置默认选中 |
checked-value | string | number | '' | 否 | 该项值,CheckboxGroup 的 change 事件会携带 checkbox 的 checkedValue |
disabled | boolean | false | 否 | 是否禁用 |
circle | boolean | false | 否 | 是否显示圆形的图标 |
active-color | string | 否 | 自定义激活态的图标颜色 |
Checkbox Events
事件名称 | 描述 | 回调函数参数 |
---|---|---|
checked-change | 勾选发生改变时触发 | checked: boolean |
Checkbox Slots
vue
<ta-checkbox>开朗</ta-checkbox>
<ta-checkbox>活泼</ta-checkbox>
CheckboxGroup
注:
CheckboxGroup Props
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
v-model | (string | number)[] | [] | 否 | 当前选择子项的 value 列表 |
name | string | 否 | 标识 | |
inline | boolean | false | 否 | 是否使用内联布局,默认纵向布局 |
active-color | string | 否 | 自定义子项激活态的图标颜色 | |
options | CheckboxOptionItem[] | 否 | 子项配置,优先级低于 slot 放入 Checkbox 组件 |
CheckboxOptionItem
key | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
value | string | number | 是 | 值, 同 Checkbox 组件 value | |
label | string | 是 | 描述,同 Checkbox 组件 slot default |
CheckboxGroup Events
事件名称 | 描述 | 回调函数参数 |
---|---|---|
change | 选中项发生改变时触发 | value: (string | number)[] |
CheckboxGroup Slots
#default
vue
<ta-checkbox-group>
<ta-checkbox>开朗</ta-checkbox>
<ta-checkbox>活泼</ta-checkbox>
</ta-checkbox-group>