element 動態(tài)合并表格的步驟
前言
element 官方的例子太簡單了,不滿足實際的需求
數(shù)據(jù)肯定是動態(tài)的,合并的行數(shù),列數(shù)都是動態(tài)的,該如何知道每一行的合并數(shù)呢
需求
動態(tài)合并表格,數(shù)據(jù)來源于數(shù)據(jù)庫
正文
一開始,我的數(shù)據(jù)源是單獨的數(shù)組,表格數(shù)據(jù)合并了幾個數(shù)據(jù),
我根據(jù)各個數(shù)組的長度,來決定每一行的合并數(shù)
結果:有些數(shù)據(jù)是正常的,但有些又合并出錯了。計算的方式不對
嘗試二
dataPretreatment() 用這個方法 計算出每一行的行數(shù)
dataPretreatment(){ //表格數(shù)據(jù)列合并預處理,生成一個與行數(shù)相同的數(shù)組記錄每一行設置的合并數(shù) // 如果是第一條記錄(索引為0),向數(shù)組中加入1,并設置索引位置; // 如果不是第一條記錄,則判斷它與前一條記錄是否相等,如果相等, // 則向mergingRows中添入元素0,并將前一位元素+1,表示合并行數(shù)+1, // 以此往復,得到所有行的合并數(shù),0即表示該行不顯示。 for(let i = 0; i < this.tableData.length; i ++){ // tabledata 表格數(shù)據(jù)源 if(i === 0){ this.mergingRows.push(1) this.mergingPos = 0 }else { if(this.tableData[i].name === this.tableData[i - 1].name) { //哪些數(shù)據(jù)是要合并的 合并的條件是什么 this.mergingRows[this.mergingPos] +=1 this.mergingRows.push(0) }else { this.mergingRows.push(1) this.mergingPos = i } } } },
用這個方法 mergeColumn()綁定到官方提供的span-method 方法上面
mergeColumn({row, column, rowIndex, columnIndex}){ if (columnIndex === 0) { //第一列 const _row = this.mergingRows[rowIndex]; const _col = _row>0 ? 1 : 0; return { rowspan: _row, colspan: _col } } // if(columnIndex === 1){ //第二列 每一行的條件可以不一樣 這樣就是動態(tài)多樣合并表格啦 // const _row = this.mergingRows[rowIndex]; // const _col = _row>0 ? 1 : 0; // return { // rowspan: _row, // colspan: _col // } // } },
展示結果
注意注意
1. 第一列 計算出要合并的行數(shù)
2.發(fā)現(xiàn)鼠標在表格移動 mergeColumn()這個方法一直在調(diào)用
Fannie式總結
一定要高清每一行的合并行數(shù),按列來區(qū)分的
切記切記哦!不然表格合并出來的 跟你想象的不一樣
以上就是element 動態(tài)合并表格的步驟的詳細內(nèi)容,更多關于element 動態(tài)合并表格的資料請關注腳本之家其它相關文章!
- element el-table如何實現(xiàn)表格動態(tài)增加/刪除/編輯表格行(帶校驗規(guī)則)
- Vue+ElementUI踩坑之動態(tài)顯示/隱藏表格的列el-table-column問題
- element-ui復雜table表格動態(tài)新增列、動態(tài)調(diào)整行以及列順序詳解
- vue element-ui表格自定義動態(tài)列具體實現(xiàn)
- el-element中el-table表格嵌套el-select實現(xiàn)動態(tài)選擇對應值功能
- vue?element-ui動態(tài)橫向統(tǒng)計表格的實現(xiàn)
- element表格行列的動態(tài)合并示例詳解
- Vue+elementui 實現(xiàn)復雜表頭和動態(tài)增加列的二維表格功能
- element根據(jù)輸入動態(tài)生成表格的示例代碼
相關文章
詳解Vue Elementui中的Tag與頁面其它元素相互交互的兩三事
這篇文章主要介紹了詳解Vue Elementui中的Tag與頁面其它元素相互交互的兩三事,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-09-09element?table?表格控件實現(xiàn)單選功能
本文主要介紹了element?table?表格控件實現(xiàn)單選功能,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07Vue 解決通過this.$refs來獲取DOM或者組件報錯問題
這篇文章主要介紹了Vue 解決通過this.$refs來獲取DOM或者組件報錯問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07Vue數(shù)據(jù)監(jiān)聽器watch和watchEffect的使用
今天我們來學習一下watch監(jiān)聽器和它的好兄弟watchEffect監(jiān)聽器。這個相對來說比較簡單,用的不是很多,當然了,根據(jù)自己的項目情況自行決定使用,希望對大家有所幫助2023-02-02詳解vue-cli項目中怎么使用mock數(shù)據(jù)
這篇文章主要介紹了vue-cli項目中怎么使用mock數(shù)據(jù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05