el-table表格样式设置单元格样式方法 :cell-class-name

需求:是否匹配当天日期决定当天时间高亮显示

效果如图在这里插入图片描述

页面代码

<el-tableref="manpowerTable":key="manpowerForUserHandle.tableKey"class="sysDictInfoTable":data="handle.manpowerTable.data"style="width: 100%;"lazy:max-height="tableHeight"size="small":indent="0":load="loadChildrenData":header-cell-style="{background: '#F7F7F9',color: '#606266'}":cell-class-name="columnStyle":tree-props="{children: 'children', hasChildren: 'hasChildren'}"><el-table-columnprop="userChinaName"label="人力"width="180"align="left"fixed></el-table-column><el-table-columnprop="totalWorkMinutes"label="工作量"fixed></el-table-column><el-table-columnv-for="(item, index) in handle.manpowerTable.data[0].dayWorkMinuteForUserVos":key="Math.random(index)"min-width="120"align="center"><template slot="header"><div style="white-space: pre-line;text-align: center">{{ timeConverter(item.period) }}</div></template><templatev-if="scope.row && scope.row.dayWorkMinuteForUserVos && scope.row.dayWorkMinuteForUserVos[index]"slot-scope="scope"><template v-if="scope.row.dayWorkMinuteForUserVos[index].noSelectSpaceDesc"><el-popover placement="bottom" trigger="hover"><divslot="reference"class="set-content"><span      :style="getMinutesColorStyle(scope.row.dayWorkMinuteForUserVos[index].minutes)">{{ getMinutesDesc(scope.row.dayWorkMinuteForUserVos[index].minutes,true,scope.row.dayWorkMinuteForUserVos[index].noSelectSpaceDesc) }}</span></div><div><template><div class="set-popper">{{ scope.row.dayWorkMinuteForUserVos[index].noSelectSpaceDesc }}</div></template></div></el-popover></template><template v-else><div><span:style="getMinutesColorStyle(scope.row.dayWorkMinuteForUserVos[index].minutes)">{{ getMinutesDesc(scope.row.dayWorkMinuteForUserVos[index].minutes,false,null) }}</span></div></template></template></el-table-column></div></el-table>

数据格式

json
{"code": 200,"message": "请求成功","data": {"records": [{"username": "zhangsan","userChinaName": "张三","totalWorkMinutes": 2458.515,"selectSpaceWorkMinutes": 58.51499999999999,"noSelectSpaceWorkMinutes": 2400,"dayWorkMinuteForUserVos": [{"period": "2025-03-10","minutes": 18.674999999999997,"noSelectSpaceDesc": ""},{"period": "2025-03-11","minutes": 12.45,"noSelectSpaceDesc": ""},{"period": "2025-03-12","minutes": 24.9,"noSelectSpaceDesc": ""},{"period": "2025-03-13","minutes": 2.4899999999999998,"noSelectSpaceDesc": ""},{"period": "2025-03-14","minutes": 0,"noSelectSpaceDesc": ""},{"period": "2025-03-15","minutes": 0},{"period": "2025-03-16","minutes": 0}]},{"username": "lisi","userChinaName": "李四","totalWorkMinutes": 960,"noSelectSpaceWorkMinutes": 960,"dayWorkMinuteForUserVos": [{"period": "2025-03-10","minutes": 0,"noSelectSpaceDesc": ""},{"period": "2025-03-11","minutes": 0,"noSelectSpaceDesc": ""},{"period": "2025-03-12","minutes": 0},{"period": "2025-03-13","minutes": 0},{"period": "2025-03-14","minutes": 0},{"period": "2025-03-15","minutes": 0},{"period": "2025-03-16","minutes": 0}]}],"total": "2","size": "1000000","current": "1","orders": [],"optimizeCountSql": true,"searchCount": true,"pages": "1"}
}

js代码

methods: {timeConverter(date) {return date + '\n' + getWeekDay(date) + '';},
// 设置单元格样式,请注意  cell-class-name 中不能使用循环
// 并且 样式的 <style> 标签中不能有 scoped 否则样式不会生效columnStyle({row, column, rowIndex, columnIndex}) {// getToday 为自定义方法!let today = getToday();if (column.label !== undefined) {return 'cell-height';}if (this.handle.manpowerTable.data[rowIndex]?.dayWorkMinuteForUserVos[columnIndex - 2]?.period === today) {return 'cell-height-bgc';}return 'cell-height';},// 设置 字体颜色getMinutesColorStyle(minutes) {if (!minutes || minutes === 0) {return {color: '#208fdc'};}else if (minutes / 60 === 8) {return {color: '#808080'};}else if (minutes / 60 > 8) {return {color: '#ef445f'};}return {color: '#72d53f'};},// 设置 descgetMinutesDesc(minutes, isDesc, desc) {if (minutes === 0 && isDesc) {return this.noSelectDescCover(desc);}else if (minutes === 0 && !isDesc) {return ' - ';}else if (minutes !== 0) {return (minutes / 60).toFixed(2) + 'h';}}
}

样式代码

<style>.cell-height {height: 10px;}.cell-height-bgc {background-color: #FFDEE7;height: 10px;}
</style>

其他代码

tool.jsexport function getWeekDay(date) {let weekDay = ['周日', '周一', '周二', '周三', '周四', '周五', '周六'];let myDate = new Date(Date.parse(date));return weekDay[myDate.getDay()];
}export function getToday() {// 获取当前日期let date = new Date();// 获取当前月份let nowMonth = date.getMonth() + 1;// 获取当前是几号let strDate = date.getDate();// 添加分隔符“-”let seperator = '-';// 对月份进行处理,1-9月在前面添加一个“0”if (nowMonth >= 1 && nowMonth <= 9) {nowMonth = '0' + nowMonth;}// 对月份进行处理,1-9号在前面添加一个“0”if (strDate >= 0 && strDate <= 9) {strDate = '0' + strDate;}// 最后拼接字符串,得到一个格式为(yyyy-MM-dd)的日期return date.getFullYear() + seperator + nowMonth + seperator + strDate;
}

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

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

相关文章

基于express+TS+mysql+sequelize的后端开发环境搭建

步骤一&#xff1a;初始化node环境 npm init -y 步骤二&#xff1a;安装 Express、TypeScript、以及相关类型的定义文件 npm install express npm install --save-dev typescript types/node types/express ts-node nodemon npm install body-parser npm install mysql2 npm in…

蓝耘MaaS平台:阿里QWQ应用拓展与调参实践

摘要&#xff1a;本文深入探讨了蓝耘MaaS平台与阿里QWQ模型的结合&#xff0c;从平台架构、模型特点到应用拓展和调参实践进行了全面分析。蓝耘平台凭借其强大的算力支持、弹性资源调度和全栈服务&#xff0c;为QWQ模型的高效部署提供了理想环境。通过细化语义描述、调整推理参…

2. qt写带有槽的登录界面(c++)

我们在1.Qt写简单的登录界面(c)_c qt 设计一个简单界面-CSDN博客中写了个简单的登录界面&#xff0c;但没有槽&#xff0c;在这里写一个带有槽的界面。 1.代码 代码目录如下&#xff1a; main.cpp的代码如下&#xff1a; #include "MainWindow.h" #include <Qt…

linux - 基础IO之操作与文件描述符全解析:从C语言到系统调用底层实现

目录 1.回顾c语言中所学的文件 2.提炼对文件的理解&#xff08;linux基础io第一阶段的学习&#xff09; a.在操作系统内部&#xff0c;一个进程和一个被打开的文件&#xff0c;他们到后面会变成两种对象之间的指针关系。 b.文件 属性 内容 c.在c语言中,以w的方式打开文件…

【A2DP】深入解读A2DP中通用访问配置文件(GAP)的互操作性要求

目录 一、模式支持要求 1.1 发现模式 1.2 连接模式 1.3 绑定模式 1.4 模式间依赖关系总结 1.5 注意事项 1.6 协议设计深层逻辑 二、安全机制&#xff08;Security Aspects&#xff09; 三、空闲模式操作&#xff08;Idle Mode Procedures&#xff09; 3.1 支持要求 …

python 入门教程 window 10 环境下安装pyenv

python的环境配置方法很多&#xff0c;由于python有两个大版本&#xff0c;很多时候需要切换某个固定的版本才能运行三方包&#xff0c;所以推荐使用pyenv 配置python 环境变量 pyenv 的安装 安装方法&#xff1a; Invoke-WebRequest -UseBasicParsing -Uri "https://r…

【fNIRS可视化学习1】基于NIRS-SPM进行光极可视化并计算通道坐标

一、前言 功能性近红外光谱(fNIRS)是一种无创的脑功能成像技术。在fNIRS研究中&#xff0c;光极的空间定位和通道坐标的计算至关重要。 1.光极可视化 光极可视化的重要性我就不赘述了&#xff0c;它可以直观检查probe设计的合理性&#xff0c;确认光极覆盖目标脑区&#xff0c…

Vue.js 中 class 和 style 绑定的全面解析

目录 引言 6.1 v-bind 指令 介绍 使用方法 6.2 绑定 HTML class 介绍 用法 6.3 绑定内联样式 介绍 用法 6.4 实战&#xff1a;制作消息提示框 介绍 用法 总结 引言 在Vue.js构建用户界面的宏伟蓝图里&#xff0c;样式的动态呈现与交互性的完美融合是吸引用户目光…

【红黑树】—— 我与C++的不解之缘(二十五)

前言 学习了avl树&#xff0c;现在来学习红黑树。 一、什么是红黑树 红黑树是一颗平衡二叉搜索树&#xff0c;它每一个节点增加了一个存储位表示节点的颜色&#xff0c;可以是红色或者黑色。 相比较于AVL树&#xff0c;红黑树也是一个自平衡二叉搜索树&#xff0c;但是它与AVL树…

SFT数据处理部分的思考

SFT数据及处理的业内共识 1&#xff0e;prompt的质量和多样性远重要于数据量级&#xff0c;微调一个 30 b 量级的base model只需要 10 w 量级的数据即可 参考&#xff1a;《LIMA&#xff1a;Less Is More for Alignment》 2&#xff0e;合成数据很重要&#xff01;一般需要通过…

Python(学习一)

做网站有成熟的框架像FLASK、DJANGO、TORNADO&#xff0c;写爬虫有好用到哭的REQUESTS&#xff0c;还有强大到没盆友的SCRAPY 随着NUMPY、SCIPY、MATLOTLIB等众多第三方模块的开发和完善&#xff0c;不仅支持py支持各种数学运算&#xff0c;还可以绘制高质量的2D和3D图像&…

ArcGIS Pro将有文字标注底图切换为无标注底图(在线地图图源)

今天介绍一下在ArcGIS Pro将有标注的地形底图换成无标注的底图。 大家在这项目底图时候会经常调用ArcGIS Pro自带的地形图&#xff0c;但是这个地形图自带是有注记的&#xff0c;如下图。 如何更改&#xff0c;才可以调用无文字注记的呢&#xff1f; 对于一个已经切好图的有注记…

Linux第三次练习

1、创建根目录结构中的所有的普通文件 首先在根目录下面新创建一个test目录&#xff0c;然后将查找到的普通文件新建到test目录下 2、列出所有账号的账号名 3、将/etc/passwd中内容按照冒号隔开的第三个字符从大到小排序后输出所有内容 4、列出/etc/passwd中的第20行-25行内容…

[CISCN 2022 初赛]ezpop(没成功复现)

打开在线环境可以看到&#xff1a; 记得之前做过一个类似的就是有点像照着漏洞去复现。应该可以直接在网上找到链子去打。 www.zip查看路由是 Index/test&#xff0c;然后 post 传参 a&#xff1a; exp&#xff08;参考了别的大神的wp&#xff09;&#xff1a; <?php //…

技术-NBIOT

是什么&#xff1f; 窄带物联网&#xff08;Narrow Band Internet of Things, NB-IoT&#xff09;成为万物互联网络的一个重要分支支持低功耗设备在广域网的蜂窝数据连接&#xff0c;也被叫作低功耗广域网(LPWAN)NB-IoT支持待机时间长、对网络连接要求较高设备的高效连接NB-Io…

Spring @Bean注解使用场景二

bean:最近在写一篇让Successfactors顾问都能搞明白的sso的逻辑的文章&#xff0c;所以一致在研究IAS的saml2.0的协议&#xff0c;希望用代码去解释SP、idp的一些概念&#xff0c;让顾问了解SSO与saml的关系&#xff0c;在github找代码的时候发现一些代码的调用关系很难理解&…

pip install和conda install的区别

这里写目录标题 一、什么是 Python 依赖&#xff08;Python Dependencies&#xff09;&#xff1f;1. 依赖的作用2. 如何管理 Python 依赖3. 依赖管理问题4. 依赖锁定总结 二、使用pip安装包venv隔离环境方法 1&#xff1a;使用 venv&#xff08;推荐&#xff09;创建虚拟环境激…

R语言高效数据处理-自定义EXCEL数据排版

注&#xff1a;以下代码均为实际数据处理中的笔记摘录&#xff0c;所以很零散 1、自定义excel表数据输出格式、布局 在实际数据处理中为了提升效率&#xff0c;将Excel报表交付给需求方时减少手动调整的环节很有必要 #1.1设置表头格式 header_style <- createStyle(font…

Word 小黑第4套

对应大猫41 上下日期是一起变动的&#xff0c;删掉第一个&#xff0c;第二个日期格式&#xff08;文件 -选项 -自定义功能区 -选上开发工具&#xff09; 点开发工具 -属性 选择相应的日期格式&#xff09; 修改标题样式时&#xff0c;标题三只有点标题二时才会显示 右击正文样…

酒店宾馆IPTV数字电视系统:创新宾客体验,引领智慧服务新潮流

酒店宾馆IPTV数字电视系统&#xff1a;创新宾客体验&#xff0c;引领智慧服务新潮流 北京海特伟业科技有限公司任洪卓于2025年3月15日发布 随着智慧酒店的不断发展&#xff0c;宾客对于酒店内的娱乐和信息服务需求日益多样化&#xff0c;传统的电视服务已难以满足现代宾客的高…