el-checkbox-group的全选与反选

需求如下:

思路:在点击全部时按钮组双向绑定赋值全部值,点击按钮组内按钮计算选中按钮数量与按钮组数量对比,判定是否选中全部

代码如下:

javascript 复制代码
<template>
  <div>
    <el-checkbox-button v-model="checkall" @change="handleCheckAllChange">全部</el-checkbox-button>
    <el-checkbox-group v-model="state" @change="checkRadio"  >
      <el-checkbox-button v-for="city in cities" :label="city" :key="city">{{city}}</el-checkbox-button>
    </el-checkbox-group>
  </div>
 
</template>
<script>
  const cityOptions = ['上海', '北京', '广州', '深圳'];
  export default {
    data () {
      return {
        cities: cityOptions,
        checkall:false,
        state:[]

      };
    },
    methods:{
        handleCheckAllChange(val){
            this.state=val?this.cities:[]
            this.getList()
        },
        checkRadio(val){
            this.state=val
            const checkedCount=val.length
            this.checkAll=checkedCount===this.cities.length
            this.getList()
        },
        getList(){

        }
     }
  }
</script>
相关推荐
哟哟耶耶12 分钟前
component-svg圆环进度百分比图(顶部文本,中间图形,底部文本)
前端·css·echarts
不想秃头的程序员15 分钟前
Vue3 中的 <keep-alive> 详解
前端·vue.js
其尔Leo15 分钟前
Vue3可动态添加行el-table组件
前端
紫小米16 分钟前
webpack详解和实操
前端·webpack·node.js
不想秃头的程序员19 分钟前
JavaScript 中的深拷贝与浅拷贝详解
前端·面试
风止何安啊21 分钟前
用 10 行代码就能当 “服务器老板”+“网络小偷”+“文件管家”?Node.js:别不信!
前端·javascript·node.js
昨晚我输给了一辆AE8621 分钟前
react-hook-form 初始化值为异步获取的数据的最佳实践
前端·react.js·强化学习
用户8417948145622 分钟前
vue 表格 vxe-table 实现前端分页、服务端分页的用法
vue.js
PieroPC23 分钟前
NiceGUI 内置Material Design图标库
前端
Cache技术分享24 分钟前
276. Java Stream API - 使用 flatMap 和 mapMulti 清理数据并转换类型
前端·后端