vue使用Element 实现表格表头合拼

最近项目有一个需求需要做一个疫情防控的表格表头比较复杂在查看Element文档和搜索相关资料后
实现了部分功能
在这里插入图片描述
代码如下

 <div class="TableShows">
      <!-- :span-method="arraySpanMethod" -->
    <el-table :header-cell-style="getRowClass" :data="tableData" style="width: 100%"  :cell-style="rowStyle">
    <!-- 这里是第一行要包裹其它的column项-->
    <el-table-column width="200" :render-header="getLabel" align="center">
                  <!-- 日期 -->
      <el-table-column prop="deptName" label="街道" width="90" align="center">
        <template slot-scope="scope">
           <el-button style="margin:0 5px;" type="text" @click="getClicktree(scope.row)">{{scope.row.deptName}}</el-button>    
        </template>     
     </el-table-column>
      <!-- 总数 -->
      <el-table-column  prop="allTotal" label="总数">
      </el-table-column>
      <!-- 第一类 -->
       <el-table-column label="现有严格居家监测人数" align="center">
        <el-table-column prop="viewTotal" label="总数" width="" align="center"> </el-table-column>
        <el-table-column prop="date" label="来自中高风险地区" width="" align="center"> </el-table-column>
        <el-table-column prop="date" label="来自低风险地区" width="" align="center"> </el-table-column>
        <el-table-column prop="date" label="密接人员" width="" align="center"> </el-table-column>
        <el-table-column prop="date" label="境外人员" width="" align="center"> </el-table-column>
        <el-table-column prop="date" label="确诊或无症状人员" width="" align="center"> </el-table-column>
        <el-table-column prop="date" label="隔离点工作人员" width="" align="center"> </el-table-column>
        <el-table-column prop="date" label="其他" width="" align="center"> </el-table-column>
      </el-table-column> 
      <!-- 第二类 -->
       <el-table-column width="" label="现有居家健康监测人数" align="center">
        <el-table-column prop="viewTotal" label="总数" width="" align="center"> </el-table-column>
        <el-table-column prop="viewZGFXDQ" label="来自低风险地区" width="" align="center"> </el-table-column>
        <el-table-column prop="viewDFXDQ" label="来自中高风险地区" width="" align="center"> </el-table-column>
        <el-table-column prop="viewMJRY" label="高风险岗位工作人员" width="" align="center"> </el-table-column>
      </el-table-column> 
      <!-- 第三类 -->
      <el-table-column label="现有健康监测人数" align="center">
        <el-table-column prop="lowTotal" label="总数" width="" align="center"> </el-table-column>
        <el-table-column prop="lowZGFXDQ" label="来自低风险地区" width="" align="center"> </el-table-column>
        <el-table-column prop="lowGLDGZRY" label="隔离点工作人员" width="" align="center"> </el-table-column>
        <el-table-column prop="lowJWRY" label="境外人员" width="" align="center"> </el-table-column>
        <el-table-column prop="lowJWTZRY" label="境外同住人员" width="" align="center"> </el-table-column>
        <el-table-column prop="lowCMJCZ" label="次密接触者" width="" align="center"> </el-table-column>
        <el-table-column prop="lowOther" label="其他" width="" align="center"> </el-table-column>
     </el-table-column> 
      <!-- 核酸监测列 -->
       <el-table-column   prop="fromTest1" label="已完成一次核酸监测" width="" align="center"> </el-table-column>
       <el-table-column   prop="fromTest2" label="已完成二次核酸监测" width="" align="center"> </el-table-column>
       <el-table-column   prop="fromTest3" label="已完成三次核酸监测" width="" align="center"> </el-table-column>
       <el-table-column   prop="fromTest4" label="已完成四次核酸监测" width="" align="center"> </el-table-column>
       <el-table-column  fixed="right" prop="fromTest5" label="已完成五次核酸监测" width="" align="center"> </el-table-column>
    </el-table-column>
    </el-table>

最后产品说表头是动态的需要后端返回 前端我就改成了
前端暂时定义的数据格式
在这里插入图片描述

在这里插入图片描述
有一个问题就是最外面的column使用了 fixed 的话会导致数据的显示问题 在网上查找资料了说需要修改element 的源代码 ,我审查了一下元素应该宽度不够 默认给了一个.is-hidden 这个样式 去掉之后就可以显示了 后来由于产品需求变更 最上面的表头要加上
在这里插入图片描述
后来干脆就把最上面的拿出来 单独写一行
在这里插入图片描述
最后看下整体效果
在这里插入图片描述
端午节的时候后端把接口提供出来了 来看下后端返回的是什么数据格式吧
在这里插入图片描述
任务排期重 端午节在家加了一天半的班 把数据处理一下 试了很多办法
在这里插入图片描述
最后处理成这种格式
这个是动态的title数据格式
在这里插入图片描述
时间紧急 代码质量比较差 就不上代码了 效果算是实现出来了 要是后端可以返回前端需要的数据格式
可以减少前端的工作量

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值