vue 原生table合并单元格多余数据处理
在使用 vue 构建原生 table 时,有时需要合并单元格。但是,当 merge_number 大于 2 时,多余的数据仍然会显示。这篇文章为您提供了隐藏这些多余数据的解决方案。
问题分析
在提供的示例数据中,merge_number 为 1 和 2 的数据需要合并。然而,当使用 rowspan 将单元格合并后,出现的“普通题目”和“普通题目2”仍然可见。这是因为多余的单元格被“挤”到了后面,导致数据显示混乱。
解决方法
立即学习“前端免费学习笔记(深入)”;
要隐藏多余的数据,需要在渲染之前对数据进行预处理。具体步骤如下:
初始化一个变量 merge 为 0,用于记录合并状态。
依次遍历数据
如果 merge_number 为 1,则将 merge 减 1,使 merge 始终为 0。如果 merge_number 大于 1,则将 merge 减去相同的值,表示需要合并的行数,并且设置 merge_number 为 0,表示该行不需要合并。
在 Vue 模板中判断 merge_number 的值
如果 merge_number 大于 0,则渲染合并的单元格(使用 rowspan)。如果 merge_number 为 0,则不渲染该单元格。
代码示例
// 数据预处理import {data} from "./data.js";const data_list = ((data) => { let merge = 0; data.forEach((row) => { if (merge > 0) { row.merge_number = 0; } else { merge = row.merge_number; } merge--; }); return data;})(data);// Vue 模板Vue.component('my-table', { template: `
... | |
---|---|
0" :rowspan="item.merge_number">{{ item.item_attr }} | 0" :rowspan="item.merge_number">{{ item.operate_time }} |
登录后复制
通过以上方法,可以有效隐藏原生 table 中合并单元格后的多余数据,使表格信息展示更加清晰美观。
以上就是Vue 原生 table 合并单元格如何隐藏多余数据?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2804050.html