【element】 table 动态表头对应动态数据

数据格式:
item:时间
used:值
在这里插入图片描述
预期效果:
在这里插入图片描述

 <el-table :data="tableData" stripe height="200" width="50%">
     <el-table-column
          v-for="(item, index) in tableColumns"
          :key="index"
          :label="`${item.title}`+`时`"
          :prop="item.keys"
      ></el-table-column>
  </el-table>
 data() {
    return {
      //全部数据
      tableData: [],
      //表头数据
      tableColumns: []
    }
  },
  mounted() {
 
    this.getStationPoweList()
  },

  methods: {
    getStationPoweList() {
      getBoxDay().then(res => {
     	//获取tableData的值(所有数据)
        this.tableData = res.data
        //定义temp集合
        let temp = {}
        //定义result数组接受结果值
        let result = []
        //遍历tableData,处理格式,产生key,用做数据对应的前缀
        this.tableData.forEach(i => {
          temp['value_' + i.item] = i.used
        })
        result.push(temp)
        // 处理好的值,重新赋值给tableData
        this.tableData = result
  		
  		//处理动态header,便利数组返回的值,对应键值对
        const header = res.data.map(i => ({ title: i.item, keys: 'value_' + i.item }))
        //赋值给表头数组
        this.tableColumns = header
        console.log(this.tableColumns, 'this.tableColumns')
      }).catch(err => {
        this.tableData = []
      })
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值