feat: add function of filtering menu data through authority;

新增:增加通过权限过滤菜单数据的功能;
This commit is contained in:
iczer
2020-08-31 20:51:58 +08:00
parent cbda23e3db
commit 1fb75f491d
4 changed files with 29 additions and 4 deletions

View File

@@ -47,4 +47,19 @@ function hasAnyRole(required, roles) {
}
}
export {hasPermission, hasRole}
/**
* 根据权限配置过滤菜单数据
* @param menuData
* @param permissions
* @param roles
*/
function filterMenu(menuData, permissions, roles) {
menuData.forEach(menu => {
menu.meta.invisible = !hasPermission(menu, permissions) && !hasRole(menu, roles)
if (menu.children && menu.children.length > 0) {
filterMenu(menu.children, permissions, roles)
}
})
}
export {hasPermission, hasRole, filterMenu}