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>
相关推荐
踢球的打工仔几秒前
前端html(3)
前端·算法·html
IDOlaoluo几秒前
nginx-sticky怎么用 Nginx 负载均衡添加 sticky 模块完整步骤
前端·chrome
接着奏乐接着舞2 分钟前
react redux 分组
前端·javascript·react.js
IT_陈寒6 分钟前
Vue 3.4 性能优化揭秘:这5个Composition API技巧让我的应用提速40%
前端·人工智能·后端
脾气有点小暴7 分钟前
Vue2 与 Vue3 核心差异深度解析
javascript·vue.js
行走的陀螺仪8 分钟前
实时通信底层原理深度剖析:短轮询、长轮询与WebSocket的本质差异
前端·网络·websocket·网络协议
大猩猩X9 分钟前
vue vxe-gantt 甘特图实现产品进度列表,自定义任务条样式和提示信息
前端·javascript·甘特图·vxe-ui·vxe-gantt
一字白首11 分钟前
Vue 进阶,生命周期 + 工程化开发
前端·javascript·vue.js
蒲公英源码14 分钟前
基于PHP+Nginx+Redis+MySQL社区生活服务平台
javascript·vue.js·mysql·php
沐风。5618 分钟前
css函数
前端·css·css3