遍历菜单树得到所有菜单ids

1、前言

在我们实现菜单管理页面的时候,有时候我们需要默认展开所有的菜单列表,但是因为后端有时候没有返回所有菜单ids数组。
而且我们也不容易获取到所有菜单ids,比如如果我们通过角色id查询到所有菜单ids数组,但是如果这个角色后面有一个菜单给它不关联了怎么办?如果说后面这个角色删除了怎么办?这样就不能通过角色id查询到所有的ids数组。

2、代码实现

util.js

//返回菜单树中所有的菜单ids
export function getAllMenuIds(menuTree, ids = []) {
  for (let i = 0; i < menuTree.length; i++) {
    const item = menuTree[i];
    ids.push(item.id);
    if (item.children && item.children.length > 0) {
      getAllMenuIds(item.children, ids);
    }
  }
  return ids;
}
posted @   news_one  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示