將JSON格式物件轉為樹形結構物件
阿新 • • 發佈:2018-11-14
changeTree (data) { if (data.length > 0) { data.forEach(item => { const parentId = item.parentId; if (parentId !== 0) { data.forEach(ele => { if (ele.id === parentId) { let childArray = ele.children; if (!childArray) { childArray = []; } childArray.push(item); ele.children = childArray; } }); } }); } // console.log(data.filter(item => item.parentId === 0)); return data.filter(item => item.parentId === 0); } // 輸入JSON格式 let data = [ { "id": 133, "name": "第三方補貨公司", "parentId": 1, "parentName": null }, { "id": 132, "name": "測試中", "parentId": 1, "parentName": null }, { "id": 131, "name": "子公司", "parentId": 104, "parentName": null }, { "id": 130, "name": "測試", "parentId": 1, "parentName": null }, { "id": 1, "name": "總部", "parentId": 0, "parentName": null }, { "id": 129, "name": "廣州易堂有限公司", "parentId": 109, "parentName": null }, { "id": 113, "name": "武漢優水", "parentId": 1, "parentName": null }, { "id": 111, "name": "優水自選", "parentId": 1, "parentName": null }, { "id": 109, "name": "廣州寶露礦泉水飲料廠", "parentId": 1, "parentName": null }, { "id": 104, "name": "廣州保利物業", "parentId": 1, "parentName": null }, { "id": 103, "name": "廣州百川水業發展有限公司", "parentId": 1, "parentName": null } ]; // 輸出樹形結構資料