合并单元格行或列
table中加入
:span-method="objectSpanMethod"
return data加入
OrderIndexArr: []
给表格赋值后调用方法
this.tableData = res.data;
this.getOrderNumber();
//根据nurseId归类的,具体实际修改
getOrderNumber() {
let OrderObj = {};
this.tableData.forEach((element, index) => {
element.rowIndex = index;
if (OrderObj[element.nurseId]) {
OrderObj[element.nurseId].push(index);
} else {
OrderObj[element.nurseId] = [];
OrderObj[element.nurseId].push(index);
}
});
// 将数组长度大于1的值 存储到this.OrderIndexArr(也就是需要合并的项)
for (let k in OrderObj) {
if (OrderObj[k].length > 1) {
this.OrderIndexArr.push(OrderObj[k]);
}
}
}
// 合并单元格
objectSpanMethod({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0 || columnIndex === 1 || columnIndex === 2) {
for (let i = 0; i < this.OrderIndexArr.length; i++) {
let element = this.OrderIndexArr[i];
for (let j = 0; j < element.length; j++) {
let item = element[j];
if (rowIndex == item) {
if (j == 0) {
return {
rowspan: element.length,
colspan: 1
};
} else if (j != 0) {
return {
rowspan: 0,
colspan: 0
};
}
}
}
}
}
}