/** * v-hasRole 角色权限处理 * Copyright (c) 2019 newfiber */ import useUserStore from "@/store/modules/user"; export default { mounted(el, binding, vnode) { const { value } = binding; const super_admin = "admin"; const roles = useUserStore().roles; if (value && value instanceof Array && value.length > 0) { const roleFlag = value; const hasRole = roles.some((role) => { return super_admin === role || roleFlag.includes(role); }); if (!hasRole) { el.parentNode && el.parentNode.removeChild(el); } } else { throw new Error(`请设置角色权限标签值`); } }, };