<!--标注选择标签弹层组件-->
<template><div class="message-box dialog-mask"><div class="dialog-content"><el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox><div style="margin: 15px 0;"></div><div class="dialog-body"><el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange"><el-checkbox v-for="(city,index) in labels" :label="city.name" :key="index">{{city.name}}<span class="spanClo" :style="{'background-color':city.color}"></span></el-checkbox></el-checkbox-group></div><footer class="text-but"><el-button class="dialog-content1" type="text" size="mini" @click="$close(false)">取消</el-button><el-button class="dialog-content1" type="text" size="mini" @click="labelDetermine">确定</el-button></footer></div></div>
</template>
<script>export default {data() {return {checkAll: false,checkedCities: ['小泡状', '上海'],allElection: [], // 全选selectionArr: [], // 选中要传给后台的数据 对象isIndeterminate: true}},props: {labels: Array,},mounted() {this.allElectionFun();this.DefaultFullSelection();},methods: {async labelDetermine() {// if (code == 0) {console.log(this.selectionArr);this.$close(this.selectionArr)// } else if (code == 1) {//     this.$message({//         message: msg,//         type: "warning",//         duration: 1200//     });// }},DefaultFullSelection(){ // 初始化 默认全部选中this.checkedCities = this.allElection;let checkedCount = this.checkedCities.length;this.checkAll = checkedCount === this.labels.length;this.isIndeterminate = checkedCount > 0 && checkedCount < this.labels.length;this.selectionFun(this.checkedCities);},allElectionFun() { // 全选数组this.allElection = [];for (var i = 0; i < this.labels.length; i++) {this.allElection.push(this.labels[i].name)}},selectionFun(selectionArr) { // 获取选中的对象this.selectionArr = [];for (var i = 0; i < this.labels.length; i++) {for (var j = 0; j < selectionArr.length; j++) {if (selectionArr[j] === this.labels[i].name) {this.selectionArr.push(this.labels[i])}}}},handleCheckAllChange(val) { // 全选this.allElectionFun();this.checkedCities = val ? this.allElection : [];this.isIndeterminate = false;// console.log(this.checkedCities);this.selectionFun(this.checkedCities);console.log(this.selectionArr)},handleCheckedCitiesChange(value) { // 选中let checkedCount = value.length;this.checkAll = checkedCount === this.labels.length;this.isIndeterminate = checkedCount > 0 && checkedCount < this.labels.length;this.selectionFun(value);console.log(this.selectionArr)}}}
</script><style scoped>.message-box {position: absolute;top: 0;right: 0;bottom: 0;left: 0;display: -ms-flexbox;display: flex;-ms-flex-align: center;align-items: center;-ms-flex-pack: center;justify-content: center;background-color: rgba(0, 0, 0, .33);z-index: 10;}.dialog-content {width: 500px;height: 340px;margin: auto;padding: 20px;background-color: white;}.dialog-body {width: 100%;height: 68%;margin: 10px;overflow: auto;}.text-but {text-align: center;}.dialog-content1 {display: inline-block;width: 100px;height: 40px;border-radius: 4px;background: #0071fe;font-size: 18px;color: #fff;margin: 16px 70px 20px;}.spanClo {width: 30px;height: 10px;display: inline-block;margin: 16px 0 0 6px;}
</style>
<style></style>

vue element 的el-checkbox-group默认全部选中相关推荐

  1. Vue 实现图片在循环中 默认 和 选中 之间的点击切换

    Vue 实现图片在循环中 默认 和 选中 之间的点击切换 html <ul style="font-size:20px;"><li:key="lesso ...

  2. 前端学习(3025):vue+element今日头条管理-关于默认子路由的问题

  3. 前端学习(3024):vue+element今日头条管理-关于默认子路由的问题

  4. vue+element 表格中全选与清除选中

    表格中添加 事件@selection-change (回调参数为选中的选项) 事件名 说明 参数 select 当用户手动勾选数据行的 Checkbox 时触发的事件 selection, row s ...

  5. vue element ui 获取,判断复选框选中的值

    <el-form-item label="某某字段"><el-checkbox-group v-model="form.字段名">< ...

  6. vue + element ui 的后台管理系统框架_从零开始搭建 VUE + Element UI后台管理系统框架...

    点击右上方红色按钮关注"web秀",让你真正秀起来 前言 后台管理系统前端框架,现在很流行的形式都是,上方和左侧都是导航菜单,中间是具体的内容.比如阿里云.七牛云.头条号.百家号等 ...

  7. Vue + Element UI——监听DOM元素高度和宽度解决方案整理(八种方法)

    问题描述 监听DOM元素大小的变化,在前端开发中,算是一个比较常见的需求,比如我们要制作可伸缩的图表的时候,可能需要根据DOM大小的变化,进行动态的更新图表. 解决方案 方法一: 监听window变化 ...

  8. 【Vue 快速入门】从零开始搭建 VUE + Element UI后台管理系统框架

    [Vue 快速入门]从零开始搭建 VUE + Element UI后台管理系统框架 前言 后台管理系统前端框架,现在很流行的形式都是,上方和左侧都是导航菜单,中间是具体的内容.比如阿里云.七牛云.头条 ...

  9. nodeJs + webpack+vue+ element ui 环境安装

    一.安装nodeJs 1.打开NodeJs官网:https://nodejs.org/en/download/  点击下载 2.双击安装,安装过程基本直接"NEXT"就可以了.(w ...

最新文章

  1. MySQL基础篇:设置大小写不敏感
  2. 《数据科学家修炼之道》一2.2 新规则
  3. kafka php 0.8,php5.6 centos7 kafka0.8.1
  4. POJ 1860: Currency Exchange 【SPFA】
  5. 英语口语 week11 Friday
  6. 【转贴】使用和制作patch文件
  7. mysql实现分布式锁_数据库实现分布式锁
  8. python中字符串中文乱码_Python中文乱码的处理
  9. 取手机号码php正则表达式,PHP获取手机号码的正则表达式写法
  10. linux加载dl580网卡驱动,HP DL580 G7 服务器在LINUX5 下的集成网卡怎么安装?_电脑_天涯问答_天涯社区...
  11. php语言简述_PHP语言的简介
  12. Docker 的LNMP + Wordpress搭建
  13. 疫情中计算机方面的直播课,线上课程,前沿讲座,主要是人工智能方面,计算机视觉,爬虫等
  14. Python-修改图片分辨率
  15. java inet aton_IP处理函数inet_aton()和inet_ntoa()使用说明
  16. 2021考研复试英语学姐分享:怎么能高情商回答出自己的优缺点?
  17. system占用cpu过高查找问题思路
  18. 手机html己停用怎么办,Apple ID被停用怎么办?“Apple ID 已停用”解决办法
  19. 深入了解基于ASR650x的LoRaMESH方案优势
  20. 【ALM】行业方案-Polarion Variant 变体管理 - 选择、变化和决断

热门文章

  1. 制作poster+香港打印流程
  2. amd为什么还用针脚_为什么AMD的CPU不采用LGA封装技术?还在继续用针脚?
  3. Java并发——Executor框架详解(Executor框架结构与框架成员)
  4. 跟着团子学SAP DMS—在SAP中通过DMS上传文档基本操作(CV01N/CV02N/CV03N/CV04N)
  5. 风淋门控制器c语言程序代码,C语言程序设计 第10章位运算
  6. (Emitted value instead of an instance of Error) Do not use v-for index as key on <transition-group>
  7. 为什么有的人职场上混得如鱼得水,有的人却混得狼狈不堪呀?
  8. 建了个微信交流群,和我一起在 b 站学 Python
  9. filebeat7.7.0相关详细配置预览- Setup ILM
  10. 华为光伏usb适配器_支持22.5W超级快充无线充电,华为P40手机保护壳深度拆解