refactor: 统一调用工具函数
This commit is contained in:
parent
d29e5ba062
commit
a415ade4c2
@ -1,12 +1,13 @@
|
|||||||
import type { Directive } from "vue"
|
import type { Directive } from "vue"
|
||||||
import { useUserStore } from "@/store/modules/user"
|
import { useUserStore } from "@/store/modules/user"
|
||||||
|
import { isArray } from "@/utils/validate"
|
||||||
|
|
||||||
/** 权限指令,和权限判断函数 checkPermission 功能类似 */
|
/** 权限指令,和权限判断函数 checkPermission 功能类似 */
|
||||||
export const permission: Directive = {
|
export const permission: Directive = {
|
||||||
mounted(el, binding) {
|
mounted(el, binding) {
|
||||||
const { value: permissionRoles } = binding
|
const { value: permissionRoles } = binding
|
||||||
const { roles } = useUserStore()
|
const { roles } = useUserStore()
|
||||||
if (Array.isArray(permissionRoles) && permissionRoles.length > 0) {
|
if (isArray(permissionRoles) && permissionRoles.length > 0) {
|
||||||
const hasPermission = roles.some(role => permissionRoles.includes(role))
|
const hasPermission = roles.some(role => permissionRoles.includes(role))
|
||||||
// hasPermission || (el.style.display = "none") // 隐藏
|
// hasPermission || (el.style.display = "none") // 隐藏
|
||||||
hasPermission || el.parentNode?.removeChild(el) // 销毁
|
hasPermission || el.parentNode?.removeChild(el) // 销毁
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
import { useUserStore } from "@/store/modules/user"
|
import { useUserStore } from "@/store/modules/user"
|
||||||
|
import { isArray } from "@/utils/validate"
|
||||||
|
|
||||||
/** 全局权限判断函数,和权限指令 v-permission 功能类似 */
|
/** 全局权限判断函数,和权限指令 v-permission 功能类似 */
|
||||||
export function checkPermission(permissionRoles: string[]): boolean {
|
export function checkPermission(permissionRoles: string[]): boolean {
|
||||||
if (Array.isArray(permissionRoles) && permissionRoles.length > 0) {
|
if (isArray(permissionRoles) && permissionRoles.length > 0) {
|
||||||
const { roles } = useUserStore()
|
const { roles } = useUserStore()
|
||||||
return roles.some(role => permissionRoles.includes(role))
|
return roles.some(role => permissionRoles.includes(role))
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user