el-table合并单元格之后,再进行隔行换色的且覆盖表格行鼠标移入的背景色的实现
el-table 中有现成的隔行换色功能,只要增加 stripe 属性即可。但是如果有单元格合并的话,这个属性就不可用了。这时候我们就需要动点小心思了。
基于相同字段进行合并
单元格合并:基于表头中的某一列,具有相同值的个数相加进行合并
隔行换色:基于表头中的某一列 ,放到一个集合里,根据下标 判断奇偶行
实现效果如图:

代码实现:
<template><div class="version-contrast__content"><el-table :data="tableData" :stripe="false" :span-method="spanMethod" :row-class-name="rowClass"><el-table-column prop="num" width="60" label="序号"></el-table-column><el-table-column prop="indexType" label="指标类别"></el-table-column><el-table-column prop="indexName" label="指标名称"></el-table-column><el-table-column prop="unit" label="单位"></el-table-column><el-table-column prop="panoramicMeeting" label="全景会"></el-table-column><el-table-column prop="lastMonthDynamic" label="上月动态"></el-table-column><el-table-column prop="thisMonthDynamic" label="本月动态"></el-table-column><el-table-column width="170" prop="difference" label="差异(本月动态版-全景会)"></el-table-column><el-table-column prop="differenceRate" label="差异率"><template slot-scope="scope"><span>{{scope.row.differenceRate}}%</span></template></el-table-column></el-table></div>
</template><script>
export default {data() {return {tableData: [{"indexName": "总货值","num": "1.00","indexType": "货值指标","unit": "万元","panoramicMeeting": "202930","lastMonthDynamic": "52695","thisMonthDynamic": "23125","difference": "25362","differenceRate": "-88.6"},{"indexName": "项目开发成本投入","num": "2.00","indexType": "成本指标","unit": "万元","panoramicMeeting": "202960","lastMonthDynamic": "51569","thisMonthDynamic": "23569","difference": "222","differenceRate": "-88.4"},{"indexName": "项目总成本单方","num": "3.00","indexType": "成本指标","unit": "万元","panoramicMeeting": "3500","lastMonthDynamic": "632","thisMonthDynamic": "6326","difference": "3333","differenceRate": "80.7"}],spanMethodOption: {}}},methods: {rowClass({row, rowIndex}) {var arr = []Object.keys(this.spanMethodOption).forEach((item, index)=>{// console.log('itemtt', item, index)if(row.indexType == item) {if(index %2 === 0) {arr.push('even-rows')//return 'even-rows'//注意:这里return不回起到效果}else{arr.push('odd-rows')//return 'odd-rows' //注意:这里return不回起到效果}}})return arr},spanMethod ({ row, column, rowIndex, columnIndex }) {if(columnIndex === 1) {if (row.isShow) {return [this.spanMethodOption[row.indexType], 1]}else{return [0, 0]}}// console.log('this.spanMethodOption', this.spanMethodOption)},},created() {this.tableData = this.tableData.map(item => {if (this.spanMethodOption[item.indexType]) {this.spanMethodOption[item.indexType] += 1item.isShow = false;} else {this.spanMethodOption[item.indexType] = 1item.isShow = true;}return item;})}
}
</script><style lang="scss">
::v-deep .el-table {.version-table th {background-color:#797979;.cell {color:#fff;}}.even-rows {background-color: #fff;}.odd-rows {background-color: #F7F8FA;}.red {color:#ed5327;}/* 覆盖表格行鼠标移入的背景色 */.el-table__body tr.hover-row>td.el-table__cell{background-color: transparent !important;}
}
</style>
相关文章:
el-table合并单元格之后,再进行隔行换色的且覆盖表格行鼠标移入的背景色的实现
el-table 中有现成的隔行换色功能,只要增加 stripe 属性即可。但是如果有单元格合并的话,这个属性就不可用了。这时候我们就需要动点小心思了。 基于相同字段进行合并 单元格合并:基于表头中的某一列,具有相同值的个数相加进行合…...
java模拟键盘实现selenium上下左右键 table中的左右滚动条实现滚动
在这篇文章中,我们将学习如何使用Java编程语言模拟键盘输入,特别是模拟上下左右方向键的操作。这是一个很有趣的项目,尤其适合刚入行的开发者。我们将分步进行,接下来,我们会通过表格展示整个实现过程,然后…...
SDF,一个从1978年运行至今的公共Unix Shell
关于SDF 最近发现了一个很古老的公共Unix Shell服务器,这个项目从1978年运行至今,如果对操作系统,对Unix感兴趣,可以进去玩一玩体验一下 SDF Public Access UNIX System - Free Shell Account and Shell Access 注册方式 我一…...
前馈神经网络 (Feedforward Neural Network, FNN)
代码功能 网络定义: 使用 torch.nn 构建了一个简单的前馈神经网络。 隐藏层使用 ReLU 激活函数,输出层使用 Sigmoid 函数(适用于二分类问题)。 数据生成: 使用经典的 XOR 问题作为数据集。 数据点为二维输入ÿ…...
【Python进阶】Python中的数据库交互:使用SQLite进行本地数据存储
1、数据持久化与访问效率 数据持久化是指程序运行过程中产生的数据能够长期保存,即使程序关闭或系统重启后仍可读取和修改。通过数据库,我们可以确保数据持久化的同时,实现数据的快速访问。例如,银行系统需要实时更新账户余额&am…...
ZooKeeper单机、集群模式搭建教程
单点配置 ZooKeeper在启动的时候,默认会读取/conf/zoo.cfg配置文件,该文件缺失会报错。因此,我们需要在将容器/conf/挂载出来,在制定的目录下,添加zoo.cfg文件。 zoo.cfg logback.xml 配置文件的信息可以从二进制包…...
函数指针示例
目录: 代码: main.c #include <stdio.h> #include <stdlib.h>int Max(int x, int y); int Min(int x, int y);int main(int argc, char**argv) {int x,y;scanf("%d",&x);scanf("%d",&y);int select;printf(&q…...
vue如何实现组件切换
一、使用条件渲染 (v-if) <template><div><button click"currentView ComponentA">Show Component A</button><button click"currentView ComponentB">Show Component B</button><component-a v-if"curren…...
计算机视觉 1-8章 (硕士)
文章目录 零、前言1.先行课程:python、深度学习、数字图像处理2.查文献3.环境安装 第一章:概论1.计算机视觉的概念2.机器学习 第二章:图像处理相关基础1.图像的概念2.图像处理3.滤波器4.卷积神经网络CNN5.图像的多层表示:图像金字…...
整数唯一分解定理
整数唯一分解定理,也称为算术基本定理,是由德国数学家高斯在其著作《算术研究》中首次提出的。本文回顾整数唯一分解定理以及对应的几个重要结论。 一、整数唯一分解定理 整数唯一分解定理,也称为算术基本定理,是数论中的一个重…...
Grass脚本2倍速多账号
前言,小编也是第一次撸空投,我是抱着试一试的态度,梦想总是要有的万一白嫖了呢 Grass 是什么? Grass 扩展程序是一款创新的工具,它可以帮助您释放未使用的网络资源的力量。 通过分享您的剩余带宽,您可以赚…...
15分钟学 Go 第 56 天:架构设计基本原则
第56天:架构设计基本原则 学习目标 理解和掌握基本的架构设计原则,以提升软件系统的可维护性、可扩展性和可重用性。 内容提纲 架构设计原则概述常见架构设计原则 单一职责原则 (SRP)开放/封闭原则 (OCP)里氏替换原则 (LSP)接口分离原则 (ISP)依赖反…...
HTML5 Video(视频)
HTML5 Video(视频) HTML5视频是现代网页设计中不可或缺的一部分,它允许开发者在网页中嵌入视频内容,为用户提供丰富多样的媒体体验。本文将深入探讨HTML5视频的各个方面,包括其基本用法、支持的格式、自定义播放器、浏览器兼容性以及最佳实践。 一、HTML5视频的基本用法 …...
开源模型应用落地-qwen模型小试-Qwen2.5-7B-Instruct-tool usage入门-串行调用多个tools(三)
一、前言 Qwen-Agent 是一个利用开源语言模型Qwen的工具使用、规划和记忆功能的框架。其模块化设计允许开发人员创建具有特定功能的定制代理,为各种应用程序提供了坚实的基础。同时,开发者可以利用 Qwen-Agent 的原子组件构建智能代理,以理解和响应用户查询。 本篇将介绍如何…...
MySQL:表设计
表的设计 从需求中获得类,类对应到数据库中的实体,实体在数据库中表现为一张一张的表,类中的属性就对应着表中的字段(也就是表中的列) 表设计的三大范式: 在数据库设计中,三大范式࿰…...
173. 二叉搜索树迭代器【 力扣(LeetCode) 】
文章目录 零、原题链接一、题目描述二、测试用例三、解题思路四、参考代码 零、原题链接 173. 二叉搜索树迭代器 一、题目描述 实现一个二叉搜索树迭代器类BSTIterator ,表示一个按中序遍历二叉搜索树(BST)的迭代器: BSTIterato…...
大三学生实习面试经历(1)
最近听了一位学长的建议,不能等一切都准备好再去开始,于是就开始了简历投递,恰好简历过了某小厂的初筛,开启了线上面试,记录了一些问题: (通过面试也确实了解到了自己在某些方面确实做的还不够…...
【论文复现】STM32设计的物联网智能鱼缸
📝个人主页🌹:Eternity._ 🌹🌹期待您的关注 🌹🌹 ❀STM32设计的物联网智能鱼缸 【1】项目功能介绍【2】设计需求总结【3】项目硬件模块组成 1.2 设计思路【1】整体设计思路【2】ESP8266工作模式…...
常见长选项和短选项对应表
长选项和短选项的等效形式 在命令行工具中,这种长选项(如--delete)和短选项(如-d)等效的情况很常见。例如--verbose和-v(用于输出详细信息),--quiet和-q(用于安静模式&a…...
Ubuntu24 上安装搜狗输入法
link 首先在终端中依次输入以下代码 sudo apt update sudo apt install fcitx 找到语言支持 在终端中依次输入 sudo cp /usr/share/applications/fcitx.desktop /etc/xdg/autostart/ sudo apt purge ibus 进入网页 搜狗输入法linux-首页 shurufa.sogou.com/linux 找到刚才下…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...
初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
vulnyx Blogger writeup
信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面,gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress,说明目标所使用的cms是wordpress,访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...
