routes获取菜单权限接口代码问题

Blade 未结 1 54
wild
wild 剑童 2025-05-07 16:49

一、该问题的重现步骤是什么?
这个接口的意义是啥?个人理解是递归从全部菜单(allMenus)获取菜单(roleMenu)的父级菜单然后添加到routes。
我有个疑问routes不是已经包含了父级菜单吗?

(List<Menu> allMenus, List<Menu> routes, Menu roleMenu) {
    Optional<Menu> menu = allMenus.stream().filter(x -> Func.(x.getId(), .getParentId())).findFirst();
    (menu.isPresent() && !routes.contains(menu.get())) {
       routes.add(menu.get());
       recursion(allMenus, routes, menu.get());
    }
}


二、你期待的结果是什么?实际看到的又是什么?

想了解这段代码的意义

三、你正在使用的是什么产品,什么版本?在什么操作系统上?

BladeX4.1.3,Windows

四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

1条回答
  • 2025-05-07 17:50

    这么做是为了解决element前端树形组件的bug,选择了树节点后,如果没有把所有子节点选中,那么提交的时候,这个父节点就不会包含在内。

    入库后不包含父节点,按么就需要写递归,把子节点对应的父节点都取出来返回给前端才能正常显示。

    1 讨论(0)
代码语言
提交回复