摘要:前言的時(shí)候沒有表格合并的方法,這當(dāng)時(shí)做表格合并的功能時(shí)候,非常頭疼。開始官方已經(jīng)支持表格合并的方法,那怎么做到表格動(dòng)態(tài)合并呢,還是直接看代碼吧。該函數(shù)可以返回一個(gè)包含兩個(gè)元素的數(shù)組,第一個(gè)元素代表,第二個(gè)元素代表。
前言
element-ui 1.0的時(shí)候沒有表格合并的方法,這當(dāng)時(shí)做表格合并的功能時(shí)候,非常頭疼。2.0開始官方已經(jīng)支持表格合并的方法,那怎么做到表格動(dòng)態(tài)合并呢,還是直接看代碼吧。
官方例子通過給table傳入span-method方法可以實(shí)現(xiàn)合并行或列,方法的參數(shù)是一個(gè)對(duì)象,里面包含當(dāng)前行row、當(dāng)前列column、當(dāng)前行號(hào)rowIndex、當(dāng)前列號(hào)columnIndex四個(gè)屬性。該函數(shù)可以返回一個(gè)包含兩個(gè)元素的數(shù)組,第一個(gè)元素代表rowspan,第二個(gè)元素代表colspan。 也可以返回一個(gè)鍵名為rowspan和colspan的對(duì)象。
https://jsfiddle.net/ve4sy51x/1/
合并方法https://jsfiddle.net/ve4sy51x...
通過一層一層往下找,
objectSpanMethod({ row, column, rowIndex, columnIndex }) { if(cacheData.length<=0){ return false } let colNum = cacheData[rowIndex][columnIndex]; if (colNum < 2) { return { rowspan: colNum, colspan: colNum } } else { return { rowspan: colNum, colspan: 1 } } }, combine(){ this.tableData.forEach((res,i)=> { cacheData[i] = []; colData.forEach((item, j) => { if (i === 0) { cacheData[0][j] = 1; cache = JSON.parse(JSON.stringify(res)); cacheIndex[j] = 0; } else { if(res[item.prop] === cache[item.prop] && item.prop !=="index"){ cacheData[cacheIndex[j]][j]++; cacheData[i][j] = 0 }else{ cache[item.prop] = res[item.prop]; cacheIndex[j] = i; cacheData[i][j] = 1; } } }) }) }
預(yù)處理生成一個(gè)二維數(shù)組,然后在放在objectSpanMethod方法里面。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/96494.html
摘要:父組件定義表頭和表內(nèi)容表格數(shù)據(jù)表頭數(shù)據(jù)引入并注冊(cè)子組件注冊(cè)子組件獲取表頭和表內(nèi)容數(shù)據(jù)。 父組件 定義表頭和表內(nèi)容 data(){ return{ // 表格數(shù)據(jù) tableColumns: [], // 表頭數(shù)據(jù) titleData:[], } } 引入并注冊(cè)子組件 import TableComponents from ../../compon...
摘要:無效方案根據(jù)交易所小時(shí)成交量占比和實(shí)時(shí)價(jià)格加權(quán)計(jì)算得到渲染結(jié)果是一個(gè)包含了文字,同時(shí)有名為的,并無小圖標(biāo),后邊中括號(hào)結(jié)構(gòu)里只能有一個(gè)有待考證。 Table 固定表頭 只要在el-table元素中定義了height屬性,即可實(shí)現(xiàn)固定表頭的表格,而不需要額外的代碼。例如: ... 這里文檔只給了一種固定高度250px的解決方案,實(shí)際應(yīng)用大多數(shù)是需要自適應(yīng)占滿父元素,超出滾動(dòng)固定表頭的...
摘要:無效方案根據(jù)交易所小時(shí)成交量占比和實(shí)時(shí)價(jià)格加權(quán)計(jì)算得到渲染結(jié)果是一個(gè)包含了文字,同時(shí)有名為的,并無小圖標(biāo),后邊中括號(hào)結(jié)構(gòu)里只能有一個(gè)有待考證。 Table 固定表頭 只要在el-table元素中定義了height屬性,即可實(shí)現(xiàn)固定表頭的表格,而不需要額外的代碼。例如: ... 這里文檔只給了一種固定高度250px的解決方案,實(shí)際應(yīng)用大多數(shù)是需要自適應(yīng)占滿父元素,超出滾動(dòng)固定表頭的...
摘要:一封裝的組件定義表格高度全屏增加前臺(tái)分頁功能。表格內(nèi)編輯后,自動(dòng)選中該行。單元格內(nèi)數(shù)據(jù)樣式單元格內(nèi)按鈕,可多個(gè)。觸發(fā)組件綁定函數(shù),參數(shù)按鈕名稱,按鈕樣式,按鈕事件標(biāo)識(shí)。單元格是否可點(diǎn)擊的判斷函數(shù),可進(jìn)行復(fù)雜的函數(shù)判斷。 vue-bxz-table 一、封裝element-ui的table組件: 定義表格高度全屏 增加前臺(tái)分頁功能。 自定義表頭,循環(huán)輸出整體表結(jié)構(gòu)。 表格內(nèi)編輯(輸入框...
閱讀 3406·2021-11-25 09:43
閱讀 3464·2021-11-19 09:40
閱讀 2464·2021-10-14 09:48
閱讀 1283·2021-09-09 11:39
閱讀 1920·2019-08-30 15:54
閱讀 2821·2019-08-30 15:44
閱讀 1994·2019-08-29 13:12
閱讀 1543·2019-08-29 12:59