在使用 elementUI
的表格的时候,需要合并单元格,使用了 :span-method
方法 定义了一个函数
当在函数里面使用vue data
定义的数据时,就会出现无限循环的报错:You may have an infinite update loop in a component render function.
这时候 又需要一个不在函数里的变量来保存值,这时候想到了使用在vue实例
外面定义一个变量:
let comptuedNum = 0
export default{
methods:{
mergeCells({row,column,rowIndex,columnIndex}){ // 把相同的合并成一个单元格
if(columnIndex === 0){
if(comptuedNum === 0){
let arr = this.materialStatisticsTwo.filter(item=>{return item.name === row.name})
comptuedNum = arr.length-1
return [arr.length,1]
}else{
comptuedNum -= 1
return [0,0]
}
}
}
}
}
其余代码不变,把变量的调用不需要this
也可以正常调用了,这样可以完美解决这个问题,当然也可以在函数里面进行别的操作来合并,但是我感觉这样是最简单的