如何实现 El-Table 数据合并,且满足特定条件下的合并规则?
el-table 数据合并优化
问题描述
需要实现 el-table 数据合并,但遇到问题:只要有相同值就可以合并,但实际要求为:
- 其他列有相同值正常合并
- 诉求类型中相同值合并时,诉求利用率也需合并
- 以上规则在细分类型和细分利用率中也适用
优化方案
数据清洗:
- 标记第一次出现的值 ismerge = false,需要被合并的行设置 ismerge = true。
- 根据 ismerge: [false, false) 记录 appeal_type 和 detail_appeal_type 的合并行的索引范围。
- 对 appeal_type_utilization_rate 和 detail_appeal_type_utilization_rate,根据 2. 记录的索引范围,对值进行求和记为 sum,将索引范围内每一行的该列的值设置为 sum,并设置每行的 ismerge 字段正确。
span method:
function objectSpanMethod({ rowIndex }) { const currentData = this.tableData[rowIndex]; if (!currentData.isMerge) { return { rowspan: 1, colspan: 1, }; } return { rowspan: 0, colspan: 1, }; }
经过以上优化,即可实现符合要求的 el-table 数据合并。
以上就是如何实现 El-Table 数据合并,且满足特定条件下的合并规则?的详细内容,更多请关注其它相关文章!