代码演示

    基础用法

    1. <van-checkbox v-model="checked">复选框</van-checkbox>
    1. export default {
    2. data() {
    3. return {
    4. checked: true
    5. };
    6. }
    7. };

    禁用状态

    1. <van-checkbox v-model="checked" disabled>复选框</van-checkbox>

    自定义颜色

    自定义图标

    通过 icon 插槽自定义图标,可以通过 slot-scope 判断是否为选中状态

    1. <van-checkbox v-model="checked">
    2. <img
    3. slot="icon"
    4. slot-scope="props"
    5. :src="props.checked ? icon.active : icon.normal"
    6. >
    7. </van-checkbox>
    1. export default {
    2. data() {
    3. checked: true,
    4. icon: {
    5. normal: '//img.yzcdn.cn/icon-normal.png',
    6. active: '//img.yzcdn.cn/icon-active.png'
    7. }
    8. }
    9. }

    复选框组

    1. <van-checkbox-group v-model="result">
    2. <van-checkbox
    3. v-for="(item, index) in list"
    4. :key="item"
    5. :name="item"
    6. >
    7. 复选框 {{ item }}
    8. </van-checkbox>
    9. </van-checkbox-group>

    设置最大可选数

    1. <van-checkbox-group v-model="result" :max="2">
    2. v-for="(item, index) in list"
    3. :key="item"
    4. :name="item"
    5. >
    6. 复选框 {{ item }}
    7. </van-checkbox>
    8. </van-checkbox-group>

    搭配单元格组件使用

    此时你需要再引入CellCellGroup组件,并通过 checkbox 的 toggle 方法手动触发切换

    1. <van-checkbox-group v-model="result">
    2. <van-cell-group>
    3. <van-cell
    4. v-for="item in list"
    5. clickable
    6. :key="item"
    7. :title="`复选框 ${item}`"
    8. @click="toggle(index)"
    9. >
    10. </van-cell>
    11. </van-cell-group>
    12. </van-checkbox-group>
    1. export default {
    2. methods: {
    3. toggle(index) {
    4. this.$refs.checkboxes[index].toggle();
    5. }
    6. }

    CheckboxGroup API

    参数说明类型默认值版本
    v-model所有选中项的标识符Array--
    disabled是否禁用所有单选框Booleanfalse-
    max设置最大可选数,0 为无限制Number0-

    CheckboxGroup Event

    事件名称说明回调参数
    change当绑定值变化时触发的事件当前组件的值

    Checkbox 方法

    方法名参数返回值介绍
    toggle--切换选中状态