支持无限套娃的一个function。
regroup(data,parent_id){
var arr=[]//建立一个新的数组用来存储结果数据
var temp;//临时变量
for (var i = 0; i < data.length; i++) {
//循环传进来的二维表数组
if (data[i].parent_id == parent_id) {
//判断当前数组中是否有子节点----panrent_id =parent_id,有相同的就存储起来
var obj = {
mc: data[i].mc,
dm: data[i].dm,
parentdwdm: data[i].parent_id,
children:[]
};
temp = this.regroup(data, data[i].dm);//再去找这个对象在整个数组中有没有子节点
if (temp&&temp.length > 0) {
//如果有子节点就赋值给obj.children.
obj.children = temp;
}
arr.push(obj);//把obj存储到数组中。
}
}
return arr;
}
同理还有一个组件支持显示无线套娃。这个是我手写的。
A.HTML
<!-- 无限套娃,树组件 -->
<ion-list class="listclass" *ngFor="let fl of data;let i