elementui合并上下行相同值的单元格
二、使用步骤
1.下方代码已经是封装好的,直接复制使用即可
代码如下(示例):
注释:1.mergeLengthFour 变量表示要处理的列根据自己需要自定义修改
2. tableDataFour 表格的数据源
arraySpanMethodFour({ row, column, rowIndex, columnIndex }) {
let mergeLengthFour = 2
if (columnIndex < mergeLengthFour) {
let finArrayFour = [1, 1];
let cgnamefour = Object.keys(row)[columnIndex]
if (rowIndex === 0 || row[cgnamefour] !== this.tableDataFour[rowIndex - 1][cgnamefour]) {
let rowspan = 1;
for (let i = 0; i < this.tableDataFour.length - 1; i++) {
if (this.tableDataFour[i][cgnamefour] === row[cgnamefour] && this.tableDataFour[i + 1][cgnamefour] === row[cgnamefour]) {
rowspan++;
}
}
finArrayFour[0] = rowspan;
} else {
finArrayFour[0] = 0;
}
let colkeysfour = Object.keys(row);
let cgvaluefour = Object.values(row)[columnIndex]
if (columnIndex === 0 || row[colkeysfour[columnIndex - 1]] !== row[colkeysfour[columnIndex]]) {
let colspan = 1;
for (let i = columnIndex; i < mergeLengthFour; i++) {
if (row[colkeysfour[i]] === cgvaluefour && row[colkeysfour[i + 1]] === cgvaluefour && i + 1 < mergeLengthFour) {
colspan++;
}
}
finArrayFour[1] = colspan;
} else {
finArrayFour[1] = 0;
}
return finArrayFour
}
},