CheckboxGroup 复选框组
示例
尺寸
可选的 ui
属性值:s
/ m
。
Normal size
Checked: -
Small size
Checked: -
<template>
<article>
<section>
<h4>Normal size</h4>
<veui-checkbox-group
v-model="selected"
:items="licenses"
/>
<p>Checked: {{ readable }}</p>
</section>
<section>
<h4>Small size</h4>
<veui-checkbox-group
v-model="selected"
ui="s"
:items="licenses"
/>
<p>Checked: {{ readable }}</p>
</section>
</article>
</template>
<script>
import { CheckboxGroup } from 'veui'
export default {
components: {
'veui-checkbox-group': CheckboxGroup
},
data () {
return {
selected: null,
licenses: [
{
label: 'MIT License',
value: 'mit'
},
{
label: 'BSD License',
value: 'bsd'
},
{
label: 'Apache License 2.0',
value: 'apache2'
}
]
}
},
computed: {
readable () {
return (this.selected || []).join(', ') || '-'
}
}
}
</script>
<style lang="less" scoped>
section {
margin-bottom: 20px;
}
h4 {
margin-top: 0;
}
</style>
单复选共存
可以使用 exclusive
选项与 empty-value
实现一些单复选共存的场景。
Select size
Checked: any
<template>
<article>
<section>
<h4>Select size</h4>
<veui-checkbox-group
v-model="selected"
:items="licenses"
empty-value="any"
/>
<p>Checked: {{ readable }}</p>
</section>
</article>
</template>
<script>
import { CheckboxGroup } from 'veui'
export default {
components: {
'veui-checkbox-group': CheckboxGroup
},
data () {
return {
selected: ['any'],
licenses: [
{
label: 'Any',
value: 'any',
exclusive: true
},
{
label: 'Small',
value: 'sm'
},
{
label: 'Medium',
value: 'md'
},
{
label: 'Large',
value: 'lg'
}
]
}
},
computed: {
readable () {
return (this.selected || []).join(', ') || '-'
}
}
}
</script>
<style lang="less" scoped>
section {
margin-bottom: 20px;
}
h4 {
margin-top: 0;
}
</style>
额外描述
在数据源的项目中设置 desc
字段或者通过 desc
插槽来指定额外描述。额外描述会在悬浮时显示。
<template>
<article>
<section>
<veui-checkbox-group
v-model="flavor"
:items="flavors"
/>
</section>
<section>
<veui-checkbox-group
v-model="flavor"
:items="flavors"
>
<template #desc="{ desc, label }">
{{ desc || `a description for ${label}` }}
</template>
</veui-checkbox-group>
</section>
</article>
</template>
<script>
import { CheckboxGroup } from 'veui'
export default {
components: {
'veui-checkbox-group': CheckboxGroup
},
data () {
return {
flavor: null,
flavors: [
{ value: 'LATTE', label: 'Latte', desc: 'a description for latte.' },
{ value: 'MOCHA', label: 'Mocha', desc: 'a description for mocha.' },
{ value: 'AMERICANO', label: 'Americano' }
]
}
}
}
</script>
<style lang="less" scoped>
section {
margin-bottom: 20px;
}
h4 {
margin-top: 0;
}
</style>
API
属性
名称 | 类型 | 默认值 | 描述 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ui | string= | - | 预设样式。
| ||||||||||||||||||
items | Array<Object> | [] | 复选框组数据源,项目类型为
| ||||||||||||||||||
value | Array | [] |
| ||||||||||||||||||
disabled | boolean= | false | 是否为禁用状态。 | ||||||||||||||||||
readonly | boolean= | false | 是否为只读状态。 | ||||||||||||||||||
empty-value | * | - | 当取消所有选择时组件需要默认选中的值,通常用于存在 exclusive 选项的场景。 |
插槽
名称 | 描述 | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
item | 选项描述文本区域。 默认内容:
另外, | |||||||||||||||
desc | 按钮的额外描述信息,作用域参数同 item 插槽。 |
事件
名称 | 描述 |
---|---|
change |
选中状态变化后触发,回调参数为 |