Checkbox 复选框

基础用法

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

API

CheckboxGroup Props

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

Checkbox Events

CheckboxGroup Events

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

Checkbox 方法

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