vue + element-ui实现动态多级表头
效果图
话不多说,直接撸代码
1 <el-table 2 ref="multipleTable" 3 :data="tableData" 4 tooltip-effect="dark" 5 style="width: 100%" 6 :height="kc_table_height" 7 class="eltable" 8 border 9 v-loading="loading" 10 @selection-change="handleSelectionChange" 11 > 12 <div slot="empty" class="kc_table_empty">暂无数据</div> 13 <el-table-column type="selection" align="center" fixed width="55"> </el-table-column> 14 <el-table-column type="index" align="center" label="序号" fixed width="55"> 15 </el-table-column> 16 <template v-for="item in budgetReportList"> 17 <el-table-column 18 v-if="item.children" 19 align="center" 20 :prop="item.value" 21 :min-width="item.width" 22 :label="item.label" 23 show-overflow-tooltip 24 > 25 <el-table-column 26 align="center" 27 v-for="col in item.children" 28 :key="col.value" 29 :prop="col.value" 30 :min-width="col.width" 31 :label="col.label" 32 show-overflow-tooltip 33 > 34 <template slot-scope="scope"> 35 <span>{{ scope.row[col.value] }}</span> 36 </template> 37 </el-table-column> 38 </el-table-column> 39 <el-table-column 40 v-else 41 fixed 42 align="center" 43 :prop="item.value" 44 :min-width="item.width" 45 :label="item.label" 46 show-overflow-tooltip 47 > 48 <template slot-scope="scope"> 49 <span>{{ scope.row[item.value] }}</span> 50 </template> 51 </el-table-column> 52 </template> 53 </el-table>
实现思路:
首先表头,包含着两种,一级和二级表头。
for循环遍历tabHeader,如果list为空则是一级表头,只需要显示value即可。
如果list有数据,则需要再次遍历list。
接着是内容的数据,是按照每行的每一个格子都放到一个数组里面,每一行的数据又放到一个数组里。最终显示的时候只需要对应每个格子的rowIndex和columnIndex来设置tableData中的数据就OK。
发现二级表头的数据对应不上,需要给tabHeader做下处理,将tabHeader的表头数据从左到右依次排序,拿到数据源后,遍历,给value同级增加一个index字段,如果list不为空则index依次增加,最终根据这个index取tableData的值。
作者:时来运转
大佬们好,我是Web前端菜鸟,初来乍到,想跟诸位共同学习成长;
综上是我每日闲时整理笔记,文章如有侵权请诸位及时告知我,谢谢关照!
标签:
element-ui
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律