22 lines
548 B
JavaScript
22 lines
548 B
JavaScript
import { useUserStore } from "@/store/user.js";
|
|
|
|
export default {
|
|
mounted(el, binding) {
|
|
const userStore = useUserStore();
|
|
const permKeys = userStore.user.permKeys;
|
|
const value = binding.value;
|
|
|
|
if (permKeys.includes('*')) {
|
|
return;
|
|
}
|
|
|
|
const hasPermission = Array.isArray(value)
|
|
? value.some(key => permKeys.includes(key))
|
|
: permKeys.includes(value);
|
|
|
|
if (!hasPermission) {
|
|
el.parentNode && el.parentNode.removeChild(el);
|
|
}
|
|
}
|
|
}
|