el-table实现动态表头

1.1el-table渲染

javascript 复制代码
<el-table
   ref="refreshTable"
   :data="tableData"
   highlight-current-row
 >
   <el-table-column
     fixed
     width="170px"
     label="测点"
     align="center"
     prop="测站名称"
   />
   <el-table-column label="降雨日期(mm)" align="center">
     <template v-for="(item, index) in headList">
       <el-table-column
         :key="index"
         :prop="item.name"
         :label="item.house"
         align="center"
       ></el-table-column>
     </template>
   </el-table-column>
 </el-table>

1.2.数据格式:

javascript 复制代码
headList:[
   {
     name: "2021-12-01",
     house: "01",
   },
   {
     name: "2021-12-02",
     house: "02",
   },
   {
     name: "2021-12-03",
     house: "03",
   }
 ],
 tableData:[
   {
     测站名称:"1#站点",
     '2021-12-01':4266.7,
     '2021-12-02':3574.9,
     '2021-12-03':4313.3
   },
   {
     测站名称:"2#站点",
     '2021-12-01':4266.7,
     '2021-12-02':3574.9,
     '2021-12-03':4313.3
   },
   {
     测站名称:"3#站点",
     '2021-12-01':4266.7,
     '2021-12-02':3574.9,
     '2021-12-03':4313.3
   }
 ]

1.3.界面展示

2.1 el-table渲染

javascript 复制代码
<el-table border :data="listData">
      <el-table-column
        fixed
        width="170px"
        label="部门"
        align="center"
        prop="dept"
      />
      <template v-for="(item,index) in dataList">
        <el-table-column
          :key="index"
          :label="item.time"
          align="center">
          <el-table-column
            :prop="item.name"
            label="姓名"
            width="120"
            align="center">
          </el-table-column>
          <el-table-column
            :prop="item.tel"
            label="电话"
            width="120"
            align="center">
          </el-table-column>
        </el-table-column>
      </template>
    </el-table>```

2.2 数据

```javascript
dataList:[
        {
          time: "2021-12-01",
          name: "n1",
          tel: "t1",
        },
        {
          time: "2021-12-02",
          name: "n2",
          tel: "t2",
        },
        {
          time: "2021-12-03",
          name: "n3",
          tel: "t3",

        },
      ],
      listData:[
        {
          dept:"综合管理部",
          'n1':'张三',
          'n2':'李四',
          'n3':'王五',
          't1':4266.7,
          't2':3574.9,
          't3':4313.3
        },
        {
          dept:"生产经营部",
          'n1':'张三',
          'n2':'李四',
          'n3':'王五',
          't1':4266.7,
          't2':3574.9,
          't3':4313.3
        },
        {
          dept:"炼油一部",
          'n1':'张三',
          'n2':'李四',
          'n3':'王五',
          't1':4266.7,
          't2':3574.9,
          't3':4313.3
        }
      ],

2.3 界面展示

相关推荐
ClouGence4 小时前
Web 自动化测试总是超时?聊聊等待、超时和异步加载
前端·测试
RobinDevNotes5 小时前
从 Electron 到 GPUI,9 个跨平台桌面方案该怎么选
前端·javascript·rust·electron·openresty·前端开发工具
软件技术NINI5 小时前
基于SpringBoot和Vue的新能源汽车销售推荐系统
java·vue.js·spring boot·后端·汽车·毕业设计·毕设
程序员大阳5 小时前
HTML+CSS+JS对话式实战(6)-学生端查看活动功能开发
javascript·css·html·模块·查看学生
jay神6 小时前
基于 YOLOv8 的轴承缺陷检测(Web 版)
前端·人工智能·yolo
jay神6 小时前
基于 YOLOv8 的森林火灾检测系统(Web 版)
前端·yolo
code2cat6 小时前
HTML基础篇之第一张网页:从index.html到浏览器里的任务清单
前端·html
miss7 小时前
AI 改完不敢上线?OpenSpec 规约驱动开发实战
前端·代码规范·前端工程化
招风的黑耳7 小时前
SpringBoot+Vue+MySQL 民宿在线预定平台 完整可运行版(源码+文档)
vue.js·spring boot·mysql
AiMan7 小时前
腾讯ima还是不可以导出左侧所有对话,只能单条导出,方法不对吗
前端