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

vue3中el-table實(shí)現(xiàn)多表頭并表格合并行或列代碼示例

 更新時間:2024年02月21日 09:49:52   作者:可愛的秋秋啊  
這篇文章主要給大家介紹了關(guān)于vue3中el-table實(shí)現(xiàn)多表頭并表格合并行或列的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用vue具有一定的參考借鑒價值,需要的朋友可以參考下

1、el-table中添加事件 :span-method="genderSpanCity"

<el-table :span-method="genderSpanCity"
              :data="data.tableData"
              :fit="true" table-layout="fixed" header-align="center" stripe
              style="width:100%;height: 96%;"
              :cell-style="{borderColor:'#aaa'}"
              :header-cell-style="{color:'#000',textAlign:'center',borderColor:' #CCC',background:'#f9f9f9',height:'50px'}"
              v-else>
      <el-table-column :label="$t('wms.dailyProduct')" align="center" height="70px">
        <el-table-column>
          <el-table-column prop="process" :label="$t('mes.workingProcedure')" width="100" align="center"/>
          <el-table-column prop="item" width="130"/>
          <el-table-column prop="item2" width="150"/>
        </el-table-column>
        <!--二級標(biāo)題日期-->
        <el-table-column v-for="(name,index) in data.title" :key="name" :label="name" align="center">
          <!-- 三級標(biāo)題-->
          <el-table-column v-for="column in data.tableColumns" :key="column.prop"
                           :prop="column.prop"
                           :label="column.label" align="center">
            <template #default="scope">
              {{ scope.row.custom.length > 0 ? scope.row.custom[index][column.prop] : scope.row.custom[column.prop] }}
            </template>
          </el-table-column>
        </el-table-column>
      </el-table-column>
    </el-table>

2、js添加函數(shù)

// 合并列
const genderSpanCity = ({
  row,
  column,
  rowIndex,
  columnIndex
}) => {
  // 合并前4行的2列與3列
  for (let i = 0; i < 13; i++) {
    if (columnIndex === 1 && rowIndex === i) {
      return {
        rowspan: 1,
        colspan: 2
      }
    } else if (columnIndex === 2 && rowIndex === i) {
      return {
        rowspan: 0,
        colspan: 0
      }
    }
  }

  // 合并第4行以后的數(shù)據(jù)
  for (let i = 4; i < data.tableData.length; i++) {
    if (columnIndex > 3 && columnIndex % 2 === 0 && rowIndex === i) {
      return [1, 3]
    } else if (columnIndex >= 3 && columnIndex % 2 === 1 && rowIndex === i) {
      return [0, 0]
    }
  }
  // 合并前兩列的數(shù)據(jù)
  if (columnIndex === 0 || columnIndex === 1) {
    // 獲取當(dāng)前單元格的值
    const currentValue = row[column.property]
    // 獲取上一行相同列的值
    const preRow = data.tableData[rowIndex - 1]
    const preValue = preRow ? preRow[column.property] : null
    // 如果當(dāng)前值和上一行的值相同,則將當(dāng)前單元格隱藏
    if (currentValue === preValue) {
      return {
        rowspan: 0,
        colspan: 0
      }
    } else {
      // 否則計(jì)算當(dāng)前單元格應(yīng)該跨越多少行
      let rowspan = 1
      for (let i = rowIndex + 1; i < data.tableData.length; i++) {
        const nextRow = data.tableData[i]
        const nextValue = nextRow[column.property]
        if (nextValue === currentValue) {
          rowspan++
        } else {
          break
        }
      }
      return {
        rowspan,
        colspan: 1
      }
    }
  }
}

效果圖為

總結(jié)

到此這篇關(guān)于vue3中el-table實(shí)現(xiàn)多表頭并表格合并行或列的文章就介紹到這了,更多相關(guān)vue3 el-table多表頭表格合并行列內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 羊了個羊通關(guān)腳本Vue?node實(shí)現(xiàn)版本

    羊了個羊通關(guān)腳本Vue?node實(shí)現(xiàn)版本

    這篇文章主要為大家介紹了羊了個羊通關(guān)腳本Vue?node實(shí)現(xiàn)版本,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • vue中如何實(shí)現(xiàn)后臺管理系統(tǒng)的權(quán)限控制的方法步驟

    vue中如何實(shí)現(xiàn)后臺管理系統(tǒng)的權(quán)限控制的方法步驟

    這篇文章主要介紹了vue中如何實(shí)現(xiàn)后臺管理系統(tǒng)的權(quán)限控制的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • vue3中使用vuedraggable實(shí)現(xiàn)拖拽el-tree數(shù)據(jù)分組功能

    vue3中使用vuedraggable實(shí)現(xiàn)拖拽el-tree數(shù)據(jù)分組功能

    這篇文章主要介紹了vue3中使用vuedraggable實(shí)現(xiàn)拖拽el-tree數(shù)據(jù)分組功能,可以實(shí)現(xiàn)單個拖拽、雙擊添加、按住ctrl鍵實(shí)現(xiàn)多個添加,或者按住shift鍵實(shí)現(xiàn)范圍添加,添加到框中的數(shù)據(jù),還能拖拽排序,需要的朋友可以參考下
    2024-02-02
  • 使用mint-ui開發(fā)項(xiàng)目的一些心得(分享)

    使用mint-ui開發(fā)項(xiàng)目的一些心得(分享)

    下面小編就為大家?guī)硪黄褂胢int-ui開發(fā)項(xiàng)目的一些心得(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Vue首屏優(yōu)化方案小結(jié)

    Vue首屏優(yōu)化方案小結(jié)

    在Vue項(xiàng)目中,引入到工程中的所有js、css文件,編譯時都會被打包進(jìn)vendor.js,瀏覽器在加載該文件之后才能開始顯示首屏,本文主要介紹了Vue首屏優(yōu)化方案小結(jié),感興趣的可以了解一下
    2024-05-05
  • vue中使用echarts的示例

    vue中使用echarts的示例

    這篇文章主要介紹了vue中使用echarts的步驟,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2021-01-01
  • vue項(xiàng)目開啟gzip壓縮功能簡單實(shí)例

    vue項(xiàng)目開啟gzip壓縮功能簡單實(shí)例

    這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目開啟gzip壓縮功能的相關(guān)資料,gizp壓縮是一種http請求優(yōu)化方式,通過減少文件體積來提高加載速度,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • vue權(quán)限問題的完美解決方案

    vue權(quán)限問題的完美解決方案

    今天來說說權(quán)限管理,因?yàn)榫W(wǎng)上已經(jīng)有很多關(guān)于這方面的很多內(nèi)容,下面這篇文章主要給大家介紹了關(guān)于vue權(quán)限問題的完美解決方案,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • element-ui和vue表單(對話框)驗(yàn)證提示語(殘留)清除操作

    element-ui和vue表單(對話框)驗(yàn)證提示語(殘留)清除操作

    這篇文章主要介紹了element-ui和vue表單(對話框)驗(yàn)證提示語(殘留)清除操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • Vue3使用中這些坑你都踩過嗎

    Vue3使用中這些坑你都踩過嗎

    Vue3?目前已經(jīng)趨于穩(wěn)定,不少代碼庫都已經(jīng)開始使用它,很多項(xiàng)目未來也必然要遷移至Vue3,本文記錄了使用Vue3時遇到的一些問題,希望能對大家有所幫助
    2023-09-09

最新評論

泰宁县| 云龙县| 驻马店市| 民县| 巴楚县| 丹江口市| 贵溪市| 腾冲县| 乡宁县| 惠来县| 仙居县| 阿坝县| 盐城市| 吉安市| 和平县| 裕民县| 仙游县| 伊金霍洛旗| 布拖县| 武平县| 屯昌县| 苗栗市| 息烽县| 岳西县| 安庆市| 七台河市| 东山县| 西盟| 年辖:市辖区| 绥棱县| 新疆| 香港 | 普洱| 盘山县| 墨脱县| 天等县| 岳阳县| 宁阳县| 蕲春县| 祥云县| 鄱阳县|