/**
* @Description 树转换成列表
* @Param menuTree, allMenuList
* @return
**/
export const getAllMenuList = (menuTree = [], allMenuList = []) => {
menuTree.forEach(node => {
allMenuList.push(node);
if (node.children && node.children.length > 0) {
getAllMenuList(node.children, allMenuList);
delete node.children;
}
});
}
例子:
const menuTree = [
{
"id": 1,
"name": "节点1",
"parentId": 0,
"children": [
{
"id": 2,
"name": "节点2",
"parentId": 1
},
{
"id": 3,
"name": "节点3",
"parentId": 1
}
]
},
{
"id": 4,
"name": "节点4",
"parentId": 0,
"children": [
{
"id": 5,
"name": "节点5",
"parentId": 4
},
{
"id": 6,
"name": "节点6",
"parentId": 4
}
]
}
];
const allMenuList = [];
getAllMenuList(menuTree, allMenuList);
结果:
[
{
"id": 1,
"name": "节点1",
"parentId": 0
},
{
"id": 2,
"name": "节点2",
"parentId": 1
},
{
"id": 3,
"name": "节点3",
"parentId": 1
},
{
"id": 4,
"name": "节点4",
"parentId": 0
},
{
"id": 5,
"name": "节点5",
"parentId": 4
},
{
"id": 6,
"name": "节点6",
"parentId": 4
}
]