checkbox复选框

<!--在el-checkbox元素中定义v-model绑定变量,单一的checkbox中,默认绑定变量的值会是Boolean,选中为true。-->
<el-checkbox v-model="checked">备选项</el-checkbox>
data() {
  return {
    checked: true
  };
}
<!--适用于多个勾选框绑定到同一个数组的情景,通过是否勾选来表示这一组选项中选中的项。
checkbox-group元素能把多个 checkbox 管理为一组,只需要在 Group 中使用v-model绑定Array类型的变量即可。 el-checkbox 的 label属性是该 checkbox 对应的值,若该标签中无内容,则该属性也充当 checkbox 按钮后的介绍。label与数组中的元素值相对应,如果存在指定的值则为选中状态,否则为不选中。-->
<el-checkbox-group v-model="checklist">
  <el-checkbox label="复选框A"></el-checkbox>
  <el-checkbox label="复选框B">bb</el-checkbox>
  <el-checkbox label="复选框C"></el-checkbox>
  <el-checkbox label="禁用" disabled></el-checkbox>
  <el-checkbox label="选中且禁用" disabled></el-checkbox>
</el-checkbox-group>
data() {
  return {
    checklist: [ '选中且禁用', '复选框A']
  };
}
<!--indeterminate 属性用以表示 checkbox 的不确定状态,一般用于实现全选的效果-->
<el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
<div style="margin: 15px 0;"></div>
<!--这里的事件函数不要加()和参数,但可以使用箭头函数加参数-->
<el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange">
  <el-checkbox v-for="city in cities" :label="city" :key="city">{{city}}</el-checkbox>
</el-checkbox-group>
<script>
  const cityOptions = ['上海', '北京', '广州', '深圳'];
  new Vue({
    el: '#app',
    data() {
      return {
        checkAll: false,
        checkedCities: ['上海', '北京'],
        cities: cityOptions,
        isIndeterminate: true
      };
    },
    methods: {
      handleCheckAllChange(val) {
        //console.log(val);val是 是否选中'全选'的bool值
        this.checkedCities = val ? cityOptions : [];
        this.isIndeterminate = false;
      },
      handleCheckedCitiesChange(value) {
        console.log(value)
        // console.log(value); value是选中的复选框的值构成的数组
        let checkedCount = value.length;
        this.checkAll = checkedCount === this.cities.length;
        //有选择,但没全选,isIndeterminate为true(设置 indeterminate 状态,只负责样式控制)
        this.isIndeterminate = checkedCount > 0 && checkedCount < this.cities.length;
      }
    }

  })
</script>

Checkbox Attributes

参数 说明 类型 可选值 默认值
label 选中状态的值(只有在checkbox-group或者绑定对象类型为array时有效) string / number / boolean
disabled 是否禁用 boolean false
border 是否显示边框 boolean false
size Checkbox 的尺寸,仅在 border 为真时有效 string medium / small / mini
checked 当前是否勾选 boolean false
indeterminate 设置 indeterminate 状态,只负责样式控制 boolean false

猜你喜欢

转载自blog.csdn.net/hrbsfdxzhq01/article/details/85768157