JSON.parse(JSON.stringify(str))
formatRowspanAndColspan(tableData, tableKey) {
const newArr = []
// 分类检出tempList中的数据push到newArr中
for (let i = 0; i < tableData.length;) {
let count = 0
for (let j = i; j < tableData.length; j++) {
if (tableKey === 'id') {
if (tableData[i].id === tableData[j].id) {
console.log('11111'+JSON.stringify(tableData[i].id))
count++
}
}
}
if (tableKey === 'id') {
newArr.push({
data: tableData[i].id,
num: count
})
}
i += count
}
// 根据此算法,格式化newArr中的数据
for (let k = 0; k < newArr.length; k++) {
if (newArr[k].num > 1 || newArr[k].num === 0) {
for (let w = k; w < newArr[k].num + k - 1; w++) {
newArr.splice(w + 1, 0, {
data: newArr[k].data,
num: 0
})
}
}
}
return newArr
},
// 合并单元格
objectSpanMethod({ row, column, rowIndex, columnIndex }) {
// columnIndex代表列,合并表格
const newArr = this.formatRowspanAndColspan(this.tableData, 'id')
console.log('开始查询1'+(JSON.stringify(newArr)))
// 合并第二列 日期(星期)
if (columnIndex === 0) {
const num = newArr[rowIndex].num
console.log('开始查询'+num)
if (num > 1) {
return {
rowspan: num,
colspan: 1
}
} else if (num < 1) {
return {
rowspan: 1,
colspan: num
}
} else {
return {
rowspan: 1,
colspan: 1
}
}
}
},