vue+element-ui動(dòng)態(tài)生成多級(jí)表頭的方法
vue+element
html配置:
<div id="table">{{tableData}} <el-table :data="tabledata01" :span-method="tableSpanMethod" max-height="420"> <el-table-column v-for='item in tableConfig' :label="item.label" :prop='item.prop' :width='item.width' :key="item.id"> <el-table-column v-if='item.children||item.children.length>0' v-for="item1 in item.children" :label="item1.label" :prop='item1.prop' :width='item1.width' :key="item1.id"> <el-table-column v-if='item1.children||item1.children.length>0' v-for="item2 in item1.children" :label="item2.label" :prop='item2.prop' :width='item2.width' :key="item2.id"> </el-table-column> </el-table-column> </el-table-column> </el-table> </div>
data:
tableConfig:[ {id:100,label:'一級(jí)表頭',prop:'',width:'',children:[ {id:110,label:'二級(jí)表頭1',prop:'districtName',width:''}, {id:120,label:'二級(jí)表頭2',prop:'timeDimension',width:''} ]}, {id:200,label:'一級(jí)表頭',prop:'',width:'',children:[ {id:210,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:211,label:'三級(jí)表頭',prop:'residentPopNum',width:'110'}, {id:212,label:'三級(jí)表頭',prop:'residentPopDst',width:'110'} ]} ]}, {id:300,label:'一級(jí)表頭',prop:'',width:'',children:[ {id:310,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:311,label:'三級(jí)表頭',prop:'liveLandArea',width:'110'}, {id:312,label:'三級(jí)表頭',prop:'liveLandDst',width:'110'} ], }, {id:320,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:321,label:'三級(jí)表頭(km²)',prop:'employmentLandArea',width:'110'}, {id:322,label:'三級(jí)表頭',prop:'employmentLandDst',width:'110'} ], } ]}, {id:400,label:'一級(jí)表頭',prop:'',width:'',children:[ {id:410,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:411,label:'三級(jí)表頭(個(gè))',prop:'regionTrafficHubNum',width:'110'}, {id:412,label:'三級(jí)表頭(人次/km²)',prop:'regionTrafficHubFlow',width:'140'} ], }, {id:420,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:421,label:'三級(jí)表頭(個(gè))',prop:'highSpeedNum',width:'110'}, {id:422,label:'三級(jí)表頭(個(gè)/km²)',prop:'highSpeedDst',width:'140'} ], },{id:430,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:431,label:'三級(jí)表頭(個(gè))',prop:'trackTrafficSpotNum',width:'140'}, {id:432,label:'三級(jí)表頭(個(gè)/km²)',prop:'trackTrafficSpotDst',width:'140'} ], }, {id:440,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:441,label:'三級(jí)表頭(km)',prop:'trackTrafficNetNum',width:'110'}, {id:442,label:'三級(jí)表頭(km/km²)',prop:'trackTrafficNetDst',width:'140'} ], }, {id:450,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:451,label:'三級(jí)表頭(個(gè))',prop:'cityTrafficHubNum',width:'110'}, {id:452,label:'三級(jí)表頭(個(gè)/km²)',prop:'cityTrafficHubDst',width:'110'}, {id:453,label:'三級(jí)表頭(人次/km²)',prop:'cityTrafficHubFlow',width:'140'} ], }, {id:460,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:461,label:'三級(jí)表頭(km)',prop:'cityTrafficNetNum',width:'110'}, {id:462,label:'三級(jí)表頭',prop:'cityTrafficNetDst',width:'140'} ], }, ]}, {id:500,label:'一級(jí)表頭',prop:'',width:'',children:[ {id:510,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:511,label:'三級(jí)表頭(km²)',prop:'pubServeLandArea',width:'110'}, {id:512,label:'三級(jí)表頭',prop:'pubServeLandDst',width:'110'} ], }, {id:520,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:521,label:'三級(jí)表頭(個(gè))',prop:'hospitalResourcesNum',width:'110'}, {id:522,label:'三級(jí)表頭(km²)',prop:'hospitalResourcesArea',width:'110'}, {id:523,label:'三級(jí)表頭(個(gè)/km²)',prop:'hospitalResourcesDst',width:'110'} ], },{id:530,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:531,label:'三級(jí)表頭(個(gè))',prop:'schoolResourcesNum',width:'110'}, {id:532,label:'三級(jí)表頭(km²)',prop:'schoolResourcesArea',width:'110'}, {id:533,label:'三級(jí)表頭(個(gè)/km²)',prop:'schoolResourcesDst',width:'110'} ], }, {id:540,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:541,label:'三級(jí)表頭(個(gè))',prop:'humanResourcesNum',width:'110'}, {id:542,label:'三級(jí)表頭(個(gè)/km²)',prop:'humanResourcesDst',width:'110'} ], }, {id:550,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:551,label:'三級(jí)表頭(個(gè))',prop:'businessResourcesNum',width:'110'}, {id:552,label:'三級(jí)表頭(個(gè)/km²)',prop:'businessResourcesDst',width:'110'} ], }, {id:560,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:561,label:'三級(jí)表頭(個(gè))',prop:'environResourcesNum',width:'110'}, {id:562,label:'三級(jí)表頭(個(gè)/km²)',prop:'environResourcesDst',width:'110'} ], }, ]}, {id:600,label:'一級(jí)表頭',prop:'',width:'',children:[ {id:610,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:611,label:'三級(jí)表頭(分)',prop:'populationScore',width:'110'}, ], }, {id:620,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:621,label:'三級(jí)表頭(分)',prop:'landScore',width:'110'}, ], },{id:630,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:631,label:'三級(jí)表頭(分)',prop:'trafficScore',width:'110'}, ], }, {id:640,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:641,label:'三級(jí)表頭(分)',prop:'communalFacilitiesScore',width:'110'}, ], }, {id:650,label:'二級(jí)表頭',prop:'',width:'',children:[ {id:651,label:'三級(jí)表頭(分)',prop:'modelScore',width:'110'}, ], } ]}, ],
注:動(dòng)態(tài)生成表頭必須配置"key"
view:
以上這篇vue+element-ui動(dòng)態(tài)生成多級(jí)表頭的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue3?計(jì)算屬性computed的實(shí)現(xiàn)原理
這篇文章主要介紹了Vue3?計(jì)算屬性computed的實(shí)現(xiàn)原理,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-08-08解決vue prop傳值default屬性如何使用,為何不生效的問題
這篇文章主要介紹了解決vue prop傳值default屬性如何使用,為何不生效的問題。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-09-09Vue監(jiān)聽Enter鍵的方法總結(jié)與區(qū)別
這篇文章主要給大家介紹了關(guān)于Vue監(jiān)聽Enter鍵的方法與區(qū)別的相關(guān)資料,在Vue中我們可以通過監(jiān)聽鍵盤事件來實(shí)現(xiàn)回車鍵切換焦點(diǎn)的功能,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10Vue中Class和Style實(shí)現(xiàn)v-bind綁定的幾種用法
項(xiàng)目開發(fā)中給元素添加/刪除 class 是非常常見的行為之一, 例如網(wǎng)站導(dǎo)航都會(huì)給選中項(xiàng)添加一個(gè) active 類用來區(qū)別選與未選中的樣式,那么在 vue 中 我們?nèi)绾翁幚磉@類的效果呢?下面我們就一起來了解一下2021-05-05vue中html2canvas給指定區(qū)域添加滿屏水印
本文主要介紹了vue中html2canvas給指定區(qū)域添加滿屏水印,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-11-11element-plus的el-table自定義表頭篩選查詢功能實(shí)現(xiàn)
這篇文章主要介紹了element-plus的el-table自定義表頭篩選查詢功能實(shí)現(xiàn),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2024-07-07vue頭部導(dǎo)航動(dòng)態(tài)點(diǎn)擊處理方法
這篇文章主要介紹了vue頭部導(dǎo)航動(dòng)態(tài)點(diǎn)擊處理方法,文中通過一段示例代碼給大家介紹了vue實(shí)現(xiàn)動(dòng)態(tài)頭部的方法,需要的朋友可以參考下2018-11-11Vue3中如何修改父組件傳遞到子組件中的值(全網(wǎng)少有!)
大家都知道,vue是具有單向數(shù)據(jù)流的傳遞特性,下面這篇文章主要給大家介紹了關(guān)于Vue3中如何修改父組件傳遞到子組件中值的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-04-04vue+echarts實(shí)現(xiàn)進(jìn)度條式柱狀圖
這篇文章主要為大家詳細(xì)介紹了vue+echarts實(shí)現(xiàn)進(jìn)度條式柱狀圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09