前端-数据树状化

前端-数据树状化

最近的一个需求,需要在页面显示一个树状结构,显示每个地区的公司。
直接上代码:
本代码是按照父结点的name等于子结点的parentId来实现的。可以根据需求变更。
      getDeptTree().then(response => {
        let cloneData = JSON.parse(JSON.stringify(response.data))  // 对源数据深度克隆
        var data =  cloneData.filter(father=>{
          let branchArr = cloneData.filter(child=>father.name == child.parentId)  //返回每一项的子级数组
          branchArr.length>0 ? father.children = branchArr : ''  //如果存在子级,则给父级添加一个children属性,并赋值
          return father.parentId==0;   //返回第一层
        });
        this.deptOptions = data
      });

页面用的是el-tree

<el-tree
          :data="deptOptions"
          :props="defaultProps"
          :expand-on-click-node="false"
          :filter-node-method="filterNode"
          ref="tree"
          default-expand-all
          @node-click="handleNodeClick"
        />
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值