// 改造树节点的结构,在每个树节点上都加入父级的code和type
const loopTreeNode = (data: any, pId?: string, pType?: string) => {
return data.map((item:any) => {
item.pId = pId;
item.pType = pType;
if (item.children && item.children.length > 0) {
loopTreeNode(item.children, item.code, item.type);
}
return item;
});
}
// 根据id找到树中的节点,包括pId,pType
const getCurrentNode = (data: any, nodeId: string | number) => {
for (var i = 0; i < data.length; i++) {
if (nodeId == data[i].code) {
return data[i];
}
if (data[i].children) {
const res: any = getCurrentNode(data[i].children, nodeId);
if (res) {
return res;
}
}
}
}
注意及时更新菜单树