diff --git a/src/directives/permission/index.ts b/src/directives/permission/index.ts index c78a692..aa74e21 100644 --- a/src/directives/permission/index.ts +++ b/src/directives/permission/index.ts @@ -1,12 +1,13 @@ import type { Directive } from "vue" import { useUserStore } from "@/store/modules/user" +import { isArray } from "@/utils/validate" /** 权限指令,和权限判断函数 checkPermission 功能类似 */ export const permission: Directive = { mounted(el, binding) { const { value: permissionRoles } = binding const { roles } = useUserStore() - if (Array.isArray(permissionRoles) && permissionRoles.length > 0) { + if (isArray(permissionRoles) && permissionRoles.length > 0) { const hasPermission = roles.some(role => permissionRoles.includes(role)) // hasPermission || (el.style.display = "none") // 隐藏 hasPermission || el.parentNode?.removeChild(el) // 销毁 diff --git a/src/utils/permission.ts b/src/utils/permission.ts index fa3557d..e1a92f3 100644 --- a/src/utils/permission.ts +++ b/src/utils/permission.ts @@ -1,8 +1,9 @@ import { useUserStore } from "@/store/modules/user" +import { isArray } from "@/utils/validate" /** 全局权限判断函数,和权限指令 v-permission 功能类似 */ export function checkPermission(permissionRoles: string[]): boolean { - if (Array.isArray(permissionRoles) && permissionRoles.length > 0) { + if (isArray(permissionRoles) && permissionRoles.length > 0) { const { roles } = useUserStore() return roles.some(role => permissionRoles.includes(role)) } else {