扁平数组转JSON树结构
data() {
return {
treeData:[
{id:1,orgName:'我是根元素',parentId:'0'},
{id:2,orgName:'我是根元素的子元素1',parentId:'1'},
{id:3,orgName:'我是根元素的子元素2',parentId:'1'},
]
}
},
methods:{
covert(list) {
const result =[];
const map = list.reduce((pre,cur) => {
pre[cur.id] = cur;
return pre;
},{});
for(let item of list){
if(item.parentId == 0){
result.push(item)
continue;
}
if(item.parentId in map){
const parent = map[item.parentId]
parent.children = parent.children || [];
parent.children.push(item)
}
}
return result;
},
},
created(){
this.covert(this.treeData)
}