avue拼接动态多级表头

拼接动态多级表头

传入的data数据为树结构的数据,以parentId关联

//拼接数据列
    getOptionColum(data){
      // console.log(JSON.stringify(data))
      //处理数据列
      // 初始化列
      // this.option.column = this.optionColumn;
      this.option.column = [];
      // 区域列
      this.option.column.push({label: "区域", prop: "HOSPITAL_NAME", align: 'left'});
      // 表里表头
      for(let i = 0; i < data.length; i++){
        // 获取一级字典
        var ele = data[i]
        // 判断是否存在子级
        if(ele.children && ele.children.length > 0){
          // 初始化二级表头
          var eleTwoTitle = [];
          // 拼接二级表头
          eleTwoTitle.push({
            label: ele.dictValue ,
            prop: "WASTE_TYPE" + ele.dictKey,
            align: 'center'
          })
          //便利一级表头子级
          ele.children.forEach(eleTwo => {
            // 判断二级表头是否存在子级
            if(eleTwo.children && eleTwo.children.length > 0){
              // 初始化三级表头
              var eleThreeTitle = [];
              // 拼接三级表头
              eleThreeTitle.push({
                label: eleTwo.dictValue ,
                prop: "WASTE_TYPE" + eleTwo.dictKey,
                align: 'center',
              });
              // 便利二级表头子级
              eleTwo.children.forEach(eleThree => {
                // 拼接三级表头
                eleThreeTitle.push(
                  {
                    label: eleThree.dictValue ,
                    prop: "WASTE_TYPE" + eleThree.dictKey,
                    align: 'center',
                  }
                );
              });
              // 拼接二级表头
              eleTwoTitle.push(
                {
                  label: eleTwo.dictValue,
                  align: 'center',
                  children: eleThreeTitle
                }
              );
            }else{
              // 拼接二级表头
              eleTwoTitle.push(
                {
                  label: eleTwo.dictValue,
                  prop: "WASTE_TYPE" + eleTwo.dictKey,
                  align: 'center',
                }
              );
            }
          });
          // 拼接一级表头
          this.option.column.push({label: ele.dictValue, align: 'center',
            children: eleTwoTitle
          });
        }else{
          // 拼接一级表头
          this.option.column.push({label: ele.dictValue , prop: "WASTE_TYPE" + ele.dictKey, align: 'center'});
        }
      }
      // 合计列
      this.option.column.push({label: "合计", prop: "SUMWEIGHT", align: 'left'});
    },
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值