Skip to content

权限管理

为了实现按钮级权限控制,本项目提供了权限指令 + 权限 API 两种鉴权方式。

鉴权指令

通过在对应按钮上使用 v-permission 指令,即可控制该按钮仅在有相应权限的用户访问时显示。

vue
<a-button v-permission="['system:user:add']">新增</a-button>

鉴权函数

在一些更复杂的场景,我们可能需要更灵活的权限 API 来实现权限处理。

js
import has from '@/utils/has'

const columns: TableInstanceColumns[] = [
  {
    title: '操作',
    slotName: 'action',
    width: 200,
    align: 'center',
    fixed: !isMobile() ? 'right' : undefined,
    show: has.hasPermOr(['system:user:update', 'system:user:delete', 'system:user:resetPwd'])
  }
]
鉴权函数描述
hasPerm(permission: string)验证用户是否具备某权限
hasPermOr(permissions: string[])验证用户是否含有指定权限,只需包含其中一个
hasPermAnd(permissions: string[])验证用户是否含有指定权限,必须全部拥有
hasRole(role: string)验证用户是否具备某角色
hasRoleOr(roles: string[])验证用户是否含有指定角色,只需包含其中一个
hasRoleAnd(roles: string[])验证用户是否含有指定角色,必须全部拥有