使用的时候直接调用方法 传入对应的数组
切记后端返回的数据 必须是有关联项的 否则无法实现此功能
数据格式
[
{
code: "10",
itemName: "我是父级一",
pcode: null,
usedSum: 333.822105
},
{
code: "20",
itemName: "我是父级二",
pcode: null,
usedSum: 23.822105
},
{
code: "1001",
pcode:"10",
itemName: "我是一级子级一",
usedSum: 13.822105
},
{
code: "1002",
pcode:"10",
itemName: "我是一级子级二",
usedSum: 53.82105
},
{
code: "2001",
pcode:"20",
itemName: "我是一级子级三",
usedSum: 323.105
},
{
code: "100101",
pcode:"1001",
itemName: "我是二级子级一",
usedSum: 35.805
},
{
code: "100102",
pcode:"1001",
itemName: "我是二级子级二",
usedSum: 33.825
}
]
// 数组转行从树
toTreeData(arr) {
// 深拷贝一份数据
let newData = JSON.parse(JSON.stringify(arr));
return newData.filter((p) => {
//重点!!! 遍历每一项的时候 先去找子项 pcode和code 对应
const c = newData.filter((item) => item.pcode === p.code);
// 找到子项数据
c.length && (p.children = c);
// 返回对应的目录数据
return p.pcode == null;
});
},