element ui中table表格表头label根据后台返回的数据动态显示

在要动态改动表头的表头中给label绑定一个数据

  <el-table-column
              prop="sig_offer"
              :label="paymentType"
              width="120"
            >

通过获取后台请求到的数据赋值到paymentType中

 labelValue() {
      let _this = this;
      if (_this.sellAllData[0].unit === "KG") {
        _this.paymentType = "数量(KG)";
      } else {
        _this.paymentType = "数量(米)";
      }
    },
  // 接口请求——客户表
    sellData(order) {
      let _this = this;
      let _sendData = {
        op: "sellData",
        order: order,
      };
      Action.Ajax(
        "cloud/oms/report/handler/OrderDetails",
        _sendData,
        (data) => {
          showLoading();
          if (data.code == 200) {
            _this.sellAllData = data.rows;
            console.log(_this.sellAllData[0].unit);
            _this.labelValue();
          } else {
            console.log("请求失败");
          }
        }
      );
    },
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过动态生成表头的方式来实现根据后端返回数据动态渲染多级表头,具体的实现步骤如下: 1. 获取后端返回表头数据,可以通过 API 接口获取。 2. 遍历表头数据,生成对应的列对象。可以使用 Element UI 表格组件的 column 属性来实现。 3. 如果当前列对象有子列,那么递归生成子列对象。 4. 将生成的列对象数组作为表格组件的 columns 属性进行渲染。 以下是一个示例代码: ```vue <template> <el-table :data="tableData" :columns="tableColumns" border ></el-table> </template> <script> export default { data() { return { tableData: [], tableColumns: [], }; }, methods: { // 获取后端返回表头数据 async fetchTableHeader() { const res = await fetch('/api/table/header'); const headerData = await res.json(); this.tableColumns = this.generateColumns(headerData); }, // 递归生成列对象 generateColumns(headerData) { return headerData.map((item) => { const column = { label: item.label, prop: item.prop, }; if (item.children && item.children.length) { column.children = this.generateColumns(item.children); } return column; }); }, // 获取后端返回表格数据 async fetchTableData() { const res = await fetch('/api/table/data'); this.tableData = await res.json(); }, }, mounted() { this.fetchTableHeader(); this.fetchTableData(); }, }; </script> ``` 在这个示例代码,通过 fetchTableHeader 方法获取后端返回表头数据,并使用 generateColumns 方法生成对应的列对象,如果当前列对象有子列,那么会递归生成子列对象。最后将生成的列对象数组作为表格组件的 columns 属性进行渲染。 需要注意的是,由于表格数据是异步获取的,因此需要在获取表头数据表格数据之后再进行渲染。在这个示例代码,通过 mounted 钩子函数来依次调用 fetchTableHeader 和 fetchTableData 方法获取数据,并在获取数据完成后渲染表格组件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值