实现内容是把数据内参数名改成 符合 Tree 结构数据的参数名
数据结构:
{
"id": "1",
"name": "1",
"children": [
{
"id": "2",
"name": "1.1",
"children": [
{
"id": "3",
"name": "1.1.1",
"children": []
},
{
"id": "4",
"name": "1.1.2",
"children": []
}
]
}
]
}
改造成:
{
"key": "1",
"title": "1",
"children": [
{
"key": "2",
"title": "1.1",
"children": [
{
"key": "3",
"title": "1.1.1",
"children": []
},
{
"key": "4",
"title": "1.1.2",
"children": []
}
]
}
]
}
递归方法:
const TreeData = (Data) => {
let nodeData = [];
treeData.forEach(item => {
item.key = item.id
item.title = (
<span>{item.name}</span>
);
if(item.children){
item.children = TreeData(item.children);
}
nodeData.push(item);
});
return nodeData;
};
注:通过 TreeData 方法处理的数据是在原数据基础上新添加需要增加的属性。
|