当前位置: 首页 > news >正文

Vue ElementUI中el-table表格嵌套样式问题

一、表格嵌套要求:

  1. 两个表格嵌套,当父表格有children数组时子表格才展示;
  2. 子表格数据少于父表格展示字段,且对应固定操作列不同;

二、嵌套问题:

当使用el-table的type='expand'实现表格嵌套时,样式出现以下问题:

  1. 展开图标每条数据都展示了,实际上接口数据并不是都有children数组;
  2. 在表格嵌套后,打开子表格,高亮显示在经过子表格后对应不上;
  3. 父表格的操作列固定在右侧影响了子表格的显示;
  4. 滑动到表格底部时,父子表格的固定列对不齐;

修改前效果如下:

修改后效果如下:

三、代码实现:

1、表格定义唯一值row-key="indexId"和类名:row-class-name="getRowClass"

  <el-table:row-class-name="getRowClass"ref="table"v-loading="tableLoading"size="mini"height="100%":data="tableData"row-key="indexId"tooltip-effect="dark":header-cell-style="{background: '#f5f7fa',fontWeight: 'bold',color: '#303133'}"@expand-change="expandChange"border><el-table-column type="expand"><template slot-scope="props"><!-- 表格嵌套第二层 --><el-tableref="sonTable":style="{height: `${(props.row.children.length + 1) * 36 + 1}px`,width: '100%'}"row-key="indexId":data="props.row.children"tooltip-effect="dark":header-cell-style="{background: '#f5f7fa',fontWeight: 'bold',color: '#303133'}"border>    <!-- 子表格字段 --><el-table-column> XXX </el-table-column></el-table><!-- 父表格字段 --><el-table-column> XXX </el-table-column></el-table>

2、类名判断

    // 表格类名方法getRowClass({ row, rowIndex }) {// 把每一行的索引放进rowrow.index = rowIndex// 判断当前行是否有子数据if (row.children === null ||row.children === undefined ||row.children.length === 0) {return 'row-hidden-expand-icon'} else {return 'row-show-icon'}},

3、表格样式

<style lang="scss" scoped>// 子表格覆盖右侧fix
::v-deep .el-table__body-wrapper {.el-table__expanded-cell {z-index: 100;}
}// 有子表格才显示展开箭头
:deep(.row-hidden-expand-icon) {td {&:first-child {.el-icon {visibility: hidden;}}.el-table__expand-icon {pointer-events: none;}}
}// 去掉表格的第三、第四个单元格出现的展开图标
:deep(.el-table__row) {.el-table__cell {&:nth-child(3),&:nth-child(4) {.el-table__expand-icon {pointer-events: none;display: none;}}}
}// 子表格样式
:deep(.el-table__expanded-cell) {padding: 10px !important;
}// 修复hover高亮不同步
::v-deep .el-table__body tr.hover-row > td.el-table__cell {background-color: transparent;
}::v-deep .el-table .el-table__row:hover {background-color: #f5f7fa;
}::v-deep .el-table__expanded-cell:hover {background-color: transparent;
}// 修复滚到下面对不齐
::v-deep .el-table__fixed-body-wrapper .el-table__body {padding-bottom: 12px;
}// 使得每一行都为36px高度
::v-deep .row-show-icon {td {&:first-child {.cell {height: 24px;}}}
}
:deep(.el-table .el-table__cell) {height: 36px !important;
}
</style>

相关文章:

Vue ElementUI中el-table表格嵌套样式问题

一、表格嵌套要求&#xff1a; 两个表格嵌套&#xff0c;当父表格有children数组时子表格才展示&#xff1b;子表格数据少于父表格展示字段&#xff0c;且对应固定操作列不同&#xff1b; 二、嵌套问题&#xff1a; 当使用el-table的typeexpand实现表格嵌套时&#xff0c;样…...

ssm+vue的校园一卡通密钥管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的校园一卡通密钥管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系…...

docker进阶 问题1

如何使用Docker的容器调试和故障排查工具&#xff1f; Docker提供了一系列强大的工具来帮助开发者调试和排查容器中的问题。以下是一些关键步骤和工具的使用方法&#xff1a; 查看容器日志&#xff1a;使用docker logs [容器ID或名称]命令可以轻松查看容器的标准输出和错误。…...

【OpenVINO™】在 MacOS 上使用 OpenVINO™ C# API 部署 Yolov5 (下篇)

在 MacOS 上使用 OpenVINO™ C# API 部署 Yolov5 &#xff08;下篇&#xff09; 项目介绍 YOLOv5 是革命性的 "单阶段"对象检测模型的第五次迭代&#xff0c;旨在实时提供高速、高精度的结果&#xff0c;是世界上最受欢迎的视觉人工智能模型&#xff0c;代表了Ult…...

使用CHATGPT进行论文写作的缺点和风险

为了真正感受 ChatGPT 的写作潜力&#xff0c;让我们先将其与传统的论文写作方法进行一下比较分析 CHATGPT论文写作的缺点和风险 传统论文写作的考验和磨难很深&#xff1a;费力的研究、组织想法和精心设计的逻辑论证&#xff0c;往往以牺牲你的理智为代价。 进入ChatGPT&am…...

【Android-Gradle】多模块开发中,定义额外属性(全局变量),穿梭在不同的Gradle文件中(kotlin脚本版)

其他信息可以参考官网&#xff1a;https://docs.gradle.org/current/dsl/org.gradle.api.plugins.ExtraPropertiesExtension.html#org.gradle.api.plugins.ExtraPropertiesExtension 但是本文讲一些简单应用&#xff1a; 需求1&#xff1a;根目录gradle文件定义一个全局变量 …...

React18原理: Fiber架构下的单线程CPU调度策略

概述 React 的 Fiber 架构, 它的整个设计思想就是去参考CPU的调度策略CPU现在都是多核多进程的&#xff0c;重点研究的是 CPU是单核单线程&#xff0c;它是如何调度的?为什么要去研究单线程的CPU&#xff1f; 浏览器中的JS它是单线程的JS 的执行线程和浏览器的渲染GUI 是互斥…...

个人搜集的gstreamer学习链接

gstreamer资源&#xff1a; GStreamer: 官方英文官网 GStreamer C开发教程 (gstreamer安装包下载目录) GStreamer GitLab源码 gstreamer 插件列表) gstreamer官方文档&#xff1a; https://gstreamer.freedesktop.org/documentation/tutorials/index.html?gi-languagec …...

Blazor Wasm Gitee 码云登录

目录: OpenID 与 OAuth2 基础知识Blazor wasm Google 登录Blazor wasm Gitee 码云登录Blazor SSR/WASM IDS/OIDC 单点登录授权实例1-建立和配置IDS身份验证服务Blazor SSR/WASM IDS/OIDC 单点登录授权实例2-登录信息组件wasmBlazor SSR/WASM IDS/OIDC 单点登录授权实例3-服务端…...

Android 自定义BaseActivity

直接上代码&#xff1a; BaseActivity代码&#xff1a; package com.example.custom.activity;import android.annotation.SuppressLint; import android.app.Activity; import android.content.pm.ActivityInfo; import android.os.Bundle; import android.os.Looper; impor…...

基于鲲鹏服务器的LNMP配置

基于鲲鹏服务器的LNMP配置 系统 Centos8 # cat /etc/redhat-release CentOS Linux release 8.0.1905 (Core) 卸载已经存在的旧版本的安装包 # rpm -qa | grep php #查看已经安装的PHP旧版本# rpm -qa | grep php | xargs rpm -e #卸载已经安装的旧版&#xff0c;如果提示有…...

MIT-Missing Semester_Topic 6:Version Control (Git) 练习题

文章目录 练习一练习二练习三练习四练习五练习六练习七 练习一 若还没有 Git 的相关经验&#xff0c;阅读 Pro Git 的前几章或诸如 Learn Git Branching 的相关教程&#xff0c;并在学习的同时从 Git 的数据模型&#xff08;data model&#xff09;的角度思考各 Git 命令。 老师…...

OpenHarmony轻量级内核-LiteOS-M

OpenHarmony轻量级内核 思维导图 https://download.csdn.net/download/lanlingxueyu/88816723 概述 内核是一人操作系统的运算核心,决定着系统的性能和稳定性。它是基于硬件的第一层软件扩充,提供操作系统的基本功能,是操作系统工作的基础。它负责管理系统的进程、内存、…...

TCP 传输控制协议——详细

目录 1 TCP 1.1 TCP 最主要的特点 1.2 TCP 的连接 TCP 连接&#xff0c;IP 地址&#xff0c;套接字 1.3 可靠传输的工作原理 1.3.1 停止等待协议 &#xff08;1&#xff09;无差错情况 &#xff08;2&#xff09;出现差错 &#xff08;3&#xff09;确认丢失和确认迟到…...

ArcGIS学习(六)地理数据库

ArcGIS学习(六)地理数据库 上个任务我们讲了一个非常重要的知识点一一坐标系。这个任务我们带来另外一个很重要的知识点一一地理数据库。 地理数据库的内容相比于坐标系简单很多! 首先,先让我们来学习下地理数据库的理论。 ArcGIS 中的地理数据库(Geodatabase)是一个用…...

保研机试算法训练个人记录笔记(四)——哈希算法

目录 两数之和 字母异位词分组 最长连续序列 力扣热题100——哈希算法 两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答…...

ChatGPT实战100例 - (14) 打造AI编程助手 Code Copilot

文章目录 ChatGPT实战100例 - (14) 打造AI编程助手 Code Copilot一、Code Copilot AI编程助手二、制作代码生成器2.1 定义生成器框架2.2 从现有代码提取代码模板三、进行代码优化ChatGPT实战100例 - (14) 打造AI编程助手 Code Copilot 一、Code Copilot AI编程助手 Code Copi…...

表单标记(html)

前言 发现input的type属性还是有挺多的&#xff0c;这里把一些常用的总结一下。 HTML 输入类型 (w3school.com.cn)https://www.w3school.com.cn/html/html_form_input_types.asp text-文本 文本输入,如果文字太长&#xff0c;超出的部分就不会显示。 定义供文本输入的单行…...

Linux文件和目录管理

目录基础 Linux操作系统以目录的方式来组织和管理系统中的所有文件。所谓的目录&#xff0c;就是将所有文件的说明信息采用树状结构组织起来。每个目录节点之下会有文件和子目录。 所有一切都从 ‘根’ 开始&#xff0c;用 ‘/’ 代表, 并且延伸到子目录。 bin&#xff1a;B…...

【go】gorm\xorm\ent事务处理

文章目录 1 gorm1.1 开启事务1.2 执行操作1.3 提交或回滚 2 xorm2.1 开启事务2.2 执行操作2.3 提交或回滚 3 ent3.1 开启事务3.2 执行操作3.3 提交或回滚 前言&#xff1a;本文介绍golang三种orm框架对数据库事务的操作 1 gorm Begin开启事务 tx *gorm.DB 1.1 开启事务 tx :…...

Leather Dress Collection 企业级参数调优指南:平衡响应速度与生成质量

Leather Dress Collection 企业级参数调优指南&#xff1a;平衡响应速度与生成质量 如果你正在考虑把Leather Dress Collection这类大模型服务搬到公司的生产环境里&#xff0c;那你肯定遇到过这样的纠结&#xff1a;调快了&#xff0c;生成的内容质量好像会打折扣&#xff1b…...

Windows驱动管理与系统优化:DriverStore Explorer全方位解决方案

Windows驱动管理与系统优化&#xff1a;DriverStore Explorer全方位解决方案 【免费下载链接】DriverStoreExplorer Driver Store Explorer [RAPR] 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 设备驱动维护是保障Windows系统稳定运行的核心环节&…...

CLIP-GmP-ViT-L-14工具实测:如何用图文匹配优化电商搜索与内容审核

CLIP-GmP-ViT-L-14工具实测&#xff1a;如何用图文匹配优化电商搜索与内容审核 1. 图文匹配技术的商业价值 在数字化商业环境中&#xff0c;图片和文字是两种最核心的内容载体。但长期以来&#xff0c;计算机系统很难真正理解两者之间的语义关联。CLIP-GmP-ViT-L-14模型的出现…...

AI浪潮冲击下,前端该何去何从

&#x1f30a; 初级前端工程师&#xff1a;向“深水区”扎根技能树与学习路径定位&#xff1a;面向初级前端开发工程师&#xff0c;聚焦底层原理、工程化思维与可验证的实战输出&#xff0c;构建 AI 时代不可替代的技术护城河。&#x1f4d0; 核心原则&#xff08;避坑指南&…...

万象视界灵坛效果展示:血条式置信度进度条与‘同步率’动态分布图实录

万象视界灵坛效果展示&#xff1a;血条式置信度进度条与同步率动态分布图实录 1. 平台概览 万象视界灵坛&#xff08;Omni-Vision Sanctuary&#xff09;是一款基于OpenAI CLIP技术的高级多模态智能感知平台。不同于传统视觉识别工具的单调界面&#xff0c;它将复杂的"语…...

YOLOv5后处理升级指南:一文搞懂NMS、Soft-NMS和CIoU-NMS怎么选

YOLOv5后处理优化实战&#xff1a;NMS算法选型与性能调优指南 当你的YOLOv5模型完成训练后&#xff0c;最后一个关键环节是后处理优化——这直接决定了检测框的质量和最终性能表现。面对琳琅满目的NMS变种和IoU计算方法&#xff0c;工程师们常常陷入选择困难&#xff1a;Soft-N…...

AWPortrait-Z WebUI日志诊断指南:从webui_startup.log定位90%常见问题

AWPortrait-Z WebUI日志诊断指南&#xff1a;从webui_startup.log定位90%常见问题 1. 引言&#xff1a;为什么需要关注启动日志 当你启动AWPortrait-Z WebUI时&#xff0c;系统会自动生成一个名为webui_startup.log的日志文件。这个文件就像是系统的"健康检查报告"…...

从‘双注意力网络’到MANet:手把手拆解CVPR经典模块在遥感分割中的魔改与应用

从双注意力机制到遥感图像分割&#xff1a;MANet的模块化设计与实战解析 遥感图像分割一直是计算机视觉领域的特殊挑战——当无人机以不同高度和角度拍摄地表时&#xff0c;同一张图像中可能同时存在微小的车辆和庞大的工业园区&#xff0c;这种极端的尺度变化让传统分割网络束…...

别再让单片机‘死机’!手把手教你用TPV6823设计一个靠谱的硬件看门狗电路

嵌入式系统守护者&#xff1a;TPV6823硬件看门狗电路实战指南 当电机控制板在工厂车间突然停止响应&#xff0c;或是工业传感器在雷雨天气后持续报错&#xff0c;许多工程师的第一反应往往是"程序又跑飞了"。这种嵌入式系统运行失控的现象&#xff0c;就像一台无人看…...

Qwen1.5-0.5B-Chat实战部署:Docker容器化改造方案

Qwen1.5-0.5B-Chat实战部署&#xff1a;Docker容器化改造方案 本文介绍如何将基于ModelScope的Qwen1.5-0.5B-Chat对话服务进行Docker容器化改造&#xff0c;实现一键部署和跨平台运行。 1. 项目概述与核心价值 Qwen1.5-0.5B-Chat是阿里通义千问开源系列中最轻量的对话模型&…...