fix: v-access:role指令错误判断code而非role
This commit is contained in:
parent
9822d2af8a
commit
a986e1a2ab
@ -13,6 +13,7 @@
|
||||
**BUG FIX**
|
||||
|
||||
- 菜单管理 新增没有加载下拉选择api
|
||||
- v-access:role指令错误判断code而非role
|
||||
|
||||
# 1.5.1
|
||||
|
||||
|
||||
@ -12,15 +12,13 @@ function isAccessible(
|
||||
el: Element,
|
||||
binding: DirectiveBinding<string | string[]>,
|
||||
) {
|
||||
const { accessMode, hasAccessByCodes, hasAccessByRoles } = useAccess();
|
||||
const { hasAccessByCodes, hasAccessByRoles } = useAccess();
|
||||
|
||||
const value = binding.value;
|
||||
|
||||
if (!value) return;
|
||||
const authMethod =
|
||||
accessMode.value === 'frontend' && binding.arg === 'role'
|
||||
? hasAccessByRoles
|
||||
: hasAccessByCodes;
|
||||
binding.arg === 'role' ? hasAccessByRoles : hasAccessByCodes;
|
||||
|
||||
const values = Array.isArray(value) ? value : [value];
|
||||
|
||||
|
||||
@ -17,6 +17,10 @@ function useAccess() {
|
||||
*/
|
||||
function hasAccessByRoles(roles: string[]) {
|
||||
const userRoleSet = new Set(userStore.userRoles);
|
||||
// 超管的角色
|
||||
if (userRoleSet.has('superadmin')) {
|
||||
return true;
|
||||
}
|
||||
const intersection = roles.filter((item) => userRoleSet.has(item));
|
||||
return intersection.length > 0;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user