elementui中的el-checkbox-group添加全选按钮

在这里插入图片描述

//多选子组件
<template><div class="multiple-choice"><el-checkbox class="no1" v-if="isShowAllBtn" :indeterminate="isIndeterminate1" v-model="checkAll1" border :style="{borderColor:isIndeterminate1?'#3886FF':''}" @change="handleCheckAllChange">全选</el-checkbox><el-checkbox-group v-model="checkedCities1" @change="handleCheckedCitiesChange1"><el-checkbox v-for="(city,index1) in cities" :label="city" :key="city" border :disabled="isDisabled?checkedCities1.length==8&&!checkedCities1.includes(city):false" style="margin-right: 10px;" :style="{marginLeft:index1==0&&isShowAllBtn?'90px':''}">{{city}}</el-checkbox></el-checkbox-group></div>
</template>
<script>
export default {props: {isShowAllBtn: {type: Boolean,default: true,},cityOptions: {type: Array,default: [],},checkAll: {type: Boolean,default: true,},isIndeterminate: {type: Boolean,default: false,},checkedCities: {type: Array,default: () => [],},numberData: {type: Array,default: () => [],},isDisabled: {//是否有禁用的功能使用,比如最多只能选择8个的限制等type: Boolean,default: false,},},data() {return {checkAll1: this.checkAll,checkedCities1: this.checkedCities,cities: this.cityOptions,isIndeterminate1: this.isIndeterminate,};},created() {// this.$emit('getChecked',this.checkedCities1)},methods: {// 多选handleCheckAllChange(val) {this.checkedCities1 = val ? this.cityOptions : [];this.isIndeterminate1 = false;this.$emit("getChecked", this.checkedCities1);},// 点击按钮handleCheckedCitiesChange1(value) {let checkedCount = value.length;this.checkAll1 = checkedCount === this.cities.length;this.isIndeterminate1 =checkedCount > 0 && checkedCount < this.cities.length;if (this.isDisabled) {if (value.length == 8) {this.$message({showClose: true,message: "最多只能同时选中8个指标",iconClass: "warning-icon-class",customClass: "el-message--warning",});}}this.$emit("getChecked", value);},},
};
</script><style lang="scss" scoped>
.multiple-choice {display: flex;align-items: start;// position: relative;margin-top: -6px;.no1 {position: absolute;z-index: 999;}.el-checkbox {height: 32px;line-height: 32px;margin-right: 0;margin-bottom: 10px;}.el-checkbox-group {line-height: 32px;margin-left: 10px;// position: absolute;margin-left: 0;display: flex;flex-wrap: wrap;}.el-checkbox.is-bordered.el-checkbox--medium {padding: 0px 13px 0px 13px;display: flex;align-items: center;}.el-checkbox.is-bordered.is-checked {border-color: #3886ff;}
}
::v-deep .el-checkbox__input.is-indeterminate .el-checkbox__inner,
::v-deep .el-checkbox__input.is-checked .el-checkbox__inner {background-color: #3886ff;border-color: #3886ff;
}
.el-checkbox.is-bordered + .el-checkbox.is-bordered {margin-left: 0px;margin-right: 10px;
}
::v-deep .el-checkbox:hover {border-color: #3886ff;.el-checkbox__input {.el-checkbox__inner {border-color: #3886ff;}}.el-checkbox__label {color: #3886ff;}
}
</style>
//引用多选的父组件
<multipleChoice :cityOptions="cityOptions" :checkAll='checkAll' :isIndeterminate="isIndeterminate" :checkedCities="checkedCities" :isShowAllBtn="isShowAllBtn" @getChecked='getChecked'></multipleChoice>
import multipleChoice from "@/components/multipleChoice.vue";
components: {multipleChoice,
},
data(){return{cityOptions: ["PH值","水温","溶解氧","电导率","浊度","COD","氨氮","高锰酸盐","总磷","总氮","氟化物",],checkedCities: ["PH值","水温","溶解氧","电导率","浊度","COD","氨氮","高锰酸盐","总磷","总氮","氟化物",],checkAll: true,isIndeterminate: false,isShowAllBtn: true,}
},
methods: {getChecked(valArr) {consoloe.log("多选返回",valArr)   },
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/19846.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

elementUI - 折叠以及多选的组件

//子组件 <template><!-- 左侧第二个 --><div class"left-second-more"><div class"layer-list-wrapper1"><el-collapse v-model"activeNames" change"handleChange"><el-collapse-item v-for"…

数据结构基础篇(5)

二十一.栈和队列的定义和特点 栈 栈的定义 栈是一个特殊的线性表&#xff0c;是限定仅在一段(通常是表尾)进行插入和删除操作的线性表又叫后进后出段的线性表&#xff0c;LIFO结构栈的概念 栈是仅在表尾进行插入&#xff0c;删除操作的线性表表尾叫栈顶Top&#xff1b;表头叫栈…

修改ModelLink在RTX3090完成预训练、微调、推理、评估以及TRT-LLM转换、推理、性能测试

修改ModelLink在RTX3090完成预训练、微调、推理、评估以及TRT-LLM转换、推理、性能测试 1 参考文档2 测试环境3 创建容器4 安装AscendSpeed、ModelLink5 下载LLAMA2-7B预训练权重和词表6 huggingface模型的推理及性能测试7.1 修改torch,deepspeed规避缺失npu环境的问题7.2 修改…

入门指南:使用 Pygame 创建游戏

Pygame 是一个功能强大的 Python 游戏开发库&#xff0c;它提供了丰富的功能和工具&#xff0c;使得创建2D游戏变得简单而有趣。本文将带您逐步学习如何使用 Pygame 创建自己的游戏。无需担心&#xff0c;即使您是一个完全的新手&#xff0c;也可以在本文中找到有用的信息。 什…

C语言编程软件贴吧:探索最佳编程伴侣的奥秘

C语言编程软件贴吧&#xff1a;探索最佳编程伴侣的奥秘 在浩瀚的编程世界中&#xff0c;C语言以其独特的魅力吸引着无数开发者。而对于初学者和资深程序员来说&#xff0c;一款优秀的C语言编程软件无疑是提升编程效率、享受编程乐趣的得力助手。那么&#xff0c;在贴吧这个信息…

期末速成 ——计算机组成原理(2)数值的表示与运算

目录 一、定点数的表示 &#xff08;一&#xff09;无符号数和有符号数的表示 &#xff08;二&#xff09;机器数的定点表示 &#xff08;三&#xff09;原码、补码、反码、移码 (1)原码表示法 二、浮点数的表示 三、溢出判断 (一)采用一位符号位 (二)采用双符号位 四…

Next.js API Routes:构建服务端功能

Next.js 的 API 路由允许你在 Next.js 应用程序中创建独立的服务端功能&#xff0c;这些功能可以处理 HTTP 请求并返回 JSON 数据或其他响应。API 路由位于项目中的 pages/api 目录下&#xff0c;每个文件都会映射到一个特定的 API 路径。 基本示例 pages/api/users.js impo…

【C++】Socket编程基础

文章目录 套接字通信类型名空间套接字函数socket()&#xff1a;创建套接字bind()函数&#xff1a;绑定服务器套接字与其地址、端口listen()函数&#xff1a;侦听客户连接connect()&#xff1a;连接套接字accept()函数&#xff1a;服务器接受连接&#xff0c;并为该连接创建一个…

在 Vue 应用中下载.doc文档(或任何其他类型的文件)

在 Vue 应用中下载.doc文档&#xff08;或任何其他类型的文件&#xff09; 在Vue应用中下载.doc文档&#xff08;或任何其他类型的文件&#xff09;通常涉及到后端提供一个文件下载的接口&#xff0c;前端通过发送请求到这个接口来触发文件下载。以下是如何在 Vue 中实现文件下…

LC 旋转 - 模拟对象

原文链接 链接 液晶 (LC) 旋转网格属性允许您以 theta、phi 为单位指定空间变化的 LC 导向。 液晶由杆状分子结构组成&#xff0c;这些分子结构具有相对于长轴的旋转对称性。因此&#xff0c;液晶具有空间变化的单轴光学特性。 相对于分子长轴和分子短轴的折射率称为非寻常 ne …

Python生成requirements.txt的方法

在Python项目中,requirements.txt 文件通常用于列出项目所需的所有Python包及其版本。这样,其他人或系统可以轻松地安装所有必要的依赖项,以确保项目的正确运行。 以下是生成 requirements.txt 文件的几种方法: 方法1:使用 pip freeze 如果你的项目环境中已经安装了所有…

《广告数据定量分析》第3版读书笔记之统计原理

1.点估计与区间估计:可用于求指标误差区间;(不常用) (1)总体比例的置信区间: 通过样本数据计算的比例,估计总体的对应比例的取值范围。主要适用于用户转化漏斗各环节的转化率估计,比如点击率、点击下载率、下载安装率、安装激活率等。 我们可以得到总体百分比的一个…

cad编程软件怎么使用:深入探索与实用指南

cad编程软件怎么使用&#xff1a;深入探索与实用指南 CAD编程软件作为现代设计与制造领域的重要工具&#xff0c;其使用方法和技巧对于提高设计效率和质量至关重要。本文将从四个方面、五个方面、六个方面和七个方面&#xff0c;详细解析CAD编程软件的使用方法&#xff0c;帮助…

SRS介绍及环境搭建

1.SRS简介 SRS&#xff08;Simple Real-Time Media Server&#xff09;是一个开源的流媒体服务器&#xff0c;它支持多种流媒体协议&#xff0c;包括RTMP、WebRTC、HLS、HTTP-FLV、SRT、MPEG-DASH和GB28181等57。SRS主要应用于直播、视频会议等场景&#xff0c;提供实时音视频服…

【刷题(14)】二叉树

一、二叉树基础 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* …

【并发程序设计】12.内存映射

12.内存映射 使一个磁盘文件与内存中的一个缓冲区相映射&#xff0c;进程可以像访问普通内存一样对文件进行访问&#xff0c;不必再调用read,write&#xff0c;更加高效。 用到的函数 mmap函数 原型&#xff1a; #include <sys/mman.h> void* mmap(void* start, size_…

【GD32】05 - PWM 脉冲宽度调制

PWM PWM (Pulse Width Modulation) 是一种模拟信号电平的方法&#xff0c;它通过使用数字信号&#xff08;通常是方波&#xff09;来近似地表示模拟信号。在PWM中&#xff0c;信号的占空比&#xff08;即高电平时间占整个周期的比例&#xff09;被用来控制平均输出电压或电流。…

MFC 解决Enter回车键和Esc取消键默认关闭窗口的三种方法

文章目录 问题描述问题原因解决办法方法一&#xff1a;在重载的PreTranslateMessage 函数中屏蔽回车和ESC 的消息方法二&#xff1a;重载OnOK函数方法三&#xff1a;将所有按钮类型设为普通按钮&#xff0c;并设置其中一个按钮为默认按钮 问题描述 一般情况下编写的MFC对话框程…

HTML语义化标签

<header> 主要用于网页整体顶部&#xff0c;<article>头部&#xff0c;<section>头部 <nav> 导航&#xff0c;一般有主要导航&#xff0c;路径导航&#xff0c;章节导航&#xff0c;内容目录导航 <main> 网页主要区域&#xff0c;一般一个网页…