最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue elementUI table 自定義表頭和行合并的實(shí)例代碼

 更新時(shí)間:2019年05月22日 16:32:04   作者:一舧  
這篇文章主要介紹了vue elementUI table 自定義表頭和行合并的實(shí)例代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

最近項(xiàng)目中做表格比較多,對(duì)element表格的使用,只需要傳遞進(jìn)去數(shù)據(jù),然后寫(xiě)死表頭即可渲染。

但現(xiàn)實(shí)中應(yīng)用中,如果寫(xiě)死表頭,并且每個(gè)組件中寫(xiě)自己的表格,不僅浪費(fèi)時(shí)間而且消耗性能。這個(gè)時(shí)候需要?jiǎng)討B(tài)渲染表頭。

而官方例子都是寫(xiě)死表頭,那么為了滿足項(xiàng)目需求,只能自己來(lái)研究一下。

1、自定義表頭

代碼如下,其實(shí)就是分了兩部分,表格主數(shù)據(jù)是在TableData對(duì)象中,表頭的數(shù)據(jù)保存在headerDatas,headerDatas.label其實(shí)就是表頭的值,如果表頭是“序號(hào)”,那么headerDatas.label="序號(hào)",在TableData中構(gòu)建TableData[序號(hào)]= 1 這樣的map對(duì)象,就可以動(dòng)態(tài)渲染出想要的表格

<el-table
     :data="TableData"
     :height="tableHeight"
     :row-class-name="showEmergencyLine"
     border
     element-loading-spinner="el-icon-loading"
     element-loading-text="拼命加載中"
     @selection-change="handleSelectionChange"
     v-loading.lock="TableLoading"
     @header-dragend="changeHeaderWidth"
    >
     <el-table-column
      v-for="header in headerDatas"
      :prop="header.type"
      :key="header.label"
      :label="header.label"
      :width="header.width"
      :minWidth="header.minWidth"
      :itemname="header.mid"
      :align="header.align"
      header-align="center"
     >
     <template slot-scope="scope">
     <div
      v-else
     >{{scope.row[scope.column.property]}}</div>
     </template>
     </el-table-column>
</el-table>

2、行合并

在項(xiàng)目中,有些表格常常會(huì)有像下面這樣的需求,一行合并后面幾行,那么這個(gè)怎么處理呢

 

官方文檔中有這個(gè)方法

 

通過(guò)給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ì)象。

 

<el-table
   :data="tableData"
   :span-method="objectSpanMethod"
   highlight-current-row
   element-loading-spinner="el-icon-loading"
   element-loading-text="拼命加載中"
   v-loading.lock="mainTableLoading"
   border
   style="width: 100%; margin-top: 25px"
  >
</el-table>

  arraySpanMethod({ row, column, rowIndex, columnIndex }) {
    if (rowIndex % 2 === 0) {//偶數(shù)行
     if (columnIndex === 0) {//第一列
      return [1, 2];//1合并一行,2占兩行
     } else if (columnIndex === 1) {//第二列
      return [0, 0];//0合并0行,0占0行
     }
    }
   },

   objectSpanMethod({ row, column, rowIndex, columnIndex }) {
    if (columnIndex === 0) {
     if (rowIndex % 2 === 0) {
      return {
       rowspan: 2,//合并的行數(shù)
       colspan: 1//合并的列數(shù),設(shè)為0則直接不顯示
      };
     } else {
      return {
       rowspan: 0,
       colspan: 0
      };
     }
    }
   }

這里面可以通過(guò)對(duì)rowIndex,columnIndex根據(jù)自己的要求作一些條件判斷,然后返回rowspan,colspan就可以合并了。

總結(jié)

以上所述是小編給大家介紹的vue elementUI table 自定義表頭和行合并的實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

相關(guān)文章

  • Vue3中g(shù)etCurrentInstance、頁(yè)面中route和router的獲取實(shí)現(xiàn)方式

    Vue3中g(shù)etCurrentInstance、頁(yè)面中route和router的獲取實(shí)現(xiàn)方式

    這篇文章主要介紹了Vue3中g(shù)etCurrentInstance、頁(yè)面中route和router的獲取實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • Vue實(shí)現(xiàn)多圖添加顯示和刪除

    Vue實(shí)現(xiàn)多圖添加顯示和刪除

    這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)多圖添加顯示和刪除,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • vue webpack打包后圖片路徑錯(cuò)誤的完美解決方法

    vue webpack打包后圖片路徑錯(cuò)誤的完美解決方法

    這篇文章主要介紹了vue webpack打包后圖片路徑錯(cuò)誤的解決方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-12-12
  • vue在標(biāo)簽中如何使用(data-XXX)自定義屬性并獲取

    vue在標(biāo)簽中如何使用(data-XXX)自定義屬性并獲取

    這篇文章主要介紹了vue在標(biāo)簽中如何使用(data-XXX)自定義屬性并獲取,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 在vue中實(shí)現(xiàn)PDF文件流預(yù)覽功能

    在vue中實(shí)現(xiàn)PDF文件流預(yù)覽功能

    這篇文章主要為大家詳細(xì)介紹如何在vue中實(shí)現(xiàn)PDF文件流預(yù)覽功能,文中的實(shí)現(xiàn)步驟講解詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考價(jià)值,需要的可以參考一下
    2023-12-12
  • Vue基礎(chǔ)之偵聽(tīng)器詳解

    Vue基礎(chǔ)之偵聽(tīng)器詳解

    這篇文章主要為大家介紹了Vue基礎(chǔ)之偵聽(tīng)器,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-12-12
  • 基于Vue實(shí)現(xiàn)樹(shù)形穿梭框的示例代碼

    基于Vue實(shí)現(xiàn)樹(shù)形穿梭框的示例代碼

    這篇文章主要為大家介紹了如何利用Vue實(shí)現(xiàn)一個(gè)樹(shù)形穿梭框,elementUI和ant-d組件庫(kù)的穿梭框組件效果都不是很好,所以本文將利用一個(gè)新的插件來(lái)實(shí)現(xiàn),需要的可以參考一下
    2022-04-04
  • Vue2.0權(quán)限樹(shù)組件實(shí)現(xiàn)代碼

    Vue2.0權(quán)限樹(shù)組件實(shí)現(xiàn)代碼

    本文通過(guò)實(shí)例代碼給大家介紹了Vue2.0權(quán)限樹(shù)組件實(shí)現(xiàn)代碼,需要的的朋友參考下吧
    2017-08-08
  • vue 2.0路由之路由嵌套示例詳解

    vue 2.0路由之路由嵌套示例詳解

    這篇文章主要給大家介紹了vue 2.0路由之路由嵌套的相關(guān)資料,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-05-05
  • vue3實(shí)現(xiàn)搜索項(xiàng)超過(guò)n行就折疊的思路詳解

    vue3實(shí)現(xiàn)搜索項(xiàng)超過(guò)n行就折疊的思路詳解

    我們?cè)谧隽斜聿樵兊臅r(shí)候,會(huì)有很多查詢項(xiàng),如何實(shí)現(xiàn)超過(guò)n行查詢項(xiàng)的時(shí)候自動(dòng)折疊起來(lái)呢?本文給大家分享vue3實(shí)現(xiàn)搜索項(xiàng)超過(guò)n行就折疊的思路詳解,感興趣的朋友一起看看吧
    2022-06-06

最新評(píng)論

双峰县| 湖口县| 威宁| 北川| 封丘县| 宣汉县| 亳州市| 历史| 西丰县| 铜山县| 老河口市| 苍山县| 突泉县| 杨浦区| 五常市| 梅州市| 石城县| 滁州市| 广安市| 乌审旗| 称多县| 溆浦县| 公主岭市| 根河市| 白水县| 金川县| 盐津县| 靖西县| 通化县| 永平县| 黑山县| 监利县| 达拉特旗| 增城市| 广宗县| 潼关县| 太仓市| 全南县| 北流市| 关岭| 大石桥市|