renderData() {
this.mergeSpanArr = [] //系统名称合并的数组
this.mergeSpanArrIndex = 0
this.zuhuSpanArr = [] //租户合并列表
this.zuhuSpanArrIndex = 0 //租户合并索引
let arr = JSON.parse(JSON.stringify(this.powerTable))
this.tableData = this.pingDataWay(arr)
this.setMergeArr(this.tableData)
this.setMergeArrZuHu(this.tableData)
},
合并单元格存在错位,错乱问题。
数据多了发现了这种情况
第一,查看是否存在没有重新渲染,发现重新渲染了。
第二,从合并单元格入手。去掉合并单元格。切换下拉选项发现渲染正常。
那么可以确定是合并单元格问题。
然后发现是合并单元格的数组没有切换没有清空,和索引没有重置。
复选框不显示的情况,通过查找上级,然后自动勾选上。
parkClick(row, pItem) {
let index = this.tableData.findIndex((item) =>
item.parkNodes.some((ele) => ele.parkEntityId == pItem.parkEntityId)
)
let flag = this.tableData[index].parkNodes.some((ele) => ele.checked)
this.tableData[index].projectChecked = flag
this.projectChange(row)
},
projectChange(row) {
console.log('row--80')
console.log(row)
console.log('this.tableData')
console.log(this.tableData)
let project = []
this.tableData.forEach((ele) => {
if (ele.sysId === row.sysId && ele.tenantId === row.tenantId) {
project.push(ele.projectChecked)
}
})
let flag = project.some(node => node)
this.tableData.forEach((ele) => {
if (ele.sysId === row.sysId) {
ele.sysChecked = flag
}
if (ele.sysId === row.sysId && ele.tenantId === row.tenantId) {
ele.tenantChecked = flag
}
})
},