// 组织机构数深度遍历获取某个机构是否在数据中0 export function recursion(data: any, filterData: any) { let hasFound = false,// 表示是否有找到id值 result = null; const filter = (data: any) => { if (Array.isArray(data) && !hasFound) { // 判断是否是数组并且没有的情况下, data.forEach(item => { if (item.id === filterData.curOrgId) { // 数据循环每个子项,并且判断子项下边是否有id值 result = item; // 返回的结果等于每一项 hasFound = true; // 并且找到id值 } else if (item.children) { filter (item.children); // 递归调用下边的子项 } }); } }; filter (data); // 调用一下 return hasFound; }
recursion(data, filterData);
data: json(树形)
filterData:要过滤的某个节点
也是在网上找的解决方案 !!!!