在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ vue-easytable的合并單元格可以根據(jù)動(dòng)態(tài)數(shù)據(jù)合并嗎?

vue-easytable的合并單元格可以根據(jù)動(dòng)態(tài)數(shù)據(jù)合并嗎?

如題,vue-easytable中合并的代碼如下:

if (field === 'type_name') {
    return {
        colSpan: 1,
        rowSpan: 3,
        content: rowData.type_name,
        componentName: ''
    }
}

可以通過條件判斷實(shí)現(xiàn)同一列相同元素合并在一起嗎?如果可以,怎么實(shí)現(xiàn)?求大佬解惑,感激不盡...


注:之前問了個(gè)element-ui的,結(jié)果這項(xiàng)目element-ui版本太低根本用不了,內(nèi)容又多不能更新版本...

(這組件又丑又難用,不能實(shí)現(xiàn)最好了...小聲bb..)

回答
編輯回答
不歸路

為了個(gè)表格合并引入個(gè)組件不劃算,可以自己封裝個(gè)通用業(yè)務(wù)組件
貼個(gè)傳送門,vue+element實(shí)現(xiàn)表格跨行或跨列合并

2017年8月2日 00:50
編輯回答
維她命

拿到表格數(shù)據(jù)后,遍歷計(jì)算下需要從哪里合并,合并幾列不就可以了

var keys = ['a','b','c']
    keys.forEach((key,i)={
        for(var i=0;i<arr.length;i++){
            var rowSpan = 0;
            while(arr[i+1] && arr[i+1][key] == arr[i][key]){
                rowSpan++
            }
            if(rowSpan){
                arr[i].rowSpan = rowSpan + 1
            i+=rowSpan
        }
    }
})
        
if (keys.includes(field) && rowData.rowSpan) {
    return {
        colSpan: 1,
        rowSpan: rowData.rowSpan,
        content: rowData[field],
        componentName: ''
    }
}

至于樣式丑,可以自己寫樣式把他的覆蓋了

2018年8月6日 17:17