nzTree 树形结构数据准备

前言

    需要从后台数据中获取数组结构的数据经过处理转换为nzTree的树形结构数据
本例中装换为带虚线的树形结构,其他的类似。
在这里插入图片描述

转换代码

思路:
1、 先通过一个数组将树的分组类获取到
2、 将获取的数据和分组数组比较将获取的数据以children数组形式划分到不同的分组类中

Result是从后台获取到的数组;
在这里插入图片描述

import {NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd';
    
nodes:NzTreeNodeOptions[];
  
var classifyname =[];
var NzTreeNodeArr = [];
if(result.length != 0){
    classifyname.push(result[0].classifyname);
    for(let i=0;i<result.length;i++){
      if(!(classifyname.indexOf(result[i].classifyname) > -1)){
        classifyname.push(result[i].classifyname);
      }
}
for(let i=0;i<classifyname.length;i++){
  var classifyObj ={};
  classifyObj["title"] = classifyname[i];
  classifyObj["key"] = "100"+i;
  classifyObj["children"] = [];
  for(let k=0;k<result.length;k++){
    if(classifyname[i]===result[k].classifyname){
      var classifyItem ={};
      classifyItem["title"] = result[k].aliasname;
      classifyItem["key"] = "100"+i+k;
      classifyItem["isLeaf"] = true;
      classifyObj["children"].push(classifyItem);
    }
  }
  NzTreeNodeArr.push(new NzTreeNode({
    title   : classifyObj["title"],
    key     : classifyObj["key"],
    children: classifyObj["children"]
  }));
}
This.nodes = NzTreeNodeArr;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值