From ade445ca488e99155c35e166362ded89d12dced7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9C=A8=E5=AD=90=E6=9D=8E=C2=B7De?= Date: Sat, 17 Jul 2021 22:45:33 +0800 Subject: [PATCH] add v-permission --- report-ui/src/components/Permission/index.js | 13 +++++++++++++ report-ui/src/components/Permission/permission.js | 14 ++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 report-ui/src/components/Permission/index.js create mode 100644 report-ui/src/components/Permission/permission.js diff --git a/report-ui/src/components/Permission/index.js b/report-ui/src/components/Permission/index.js new file mode 100644 index 00000000..cbd75e93 --- /dev/null +++ b/report-ui/src/components/Permission/index.js @@ -0,0 +1,13 @@ +import permission from './permission' + +const install = function (Vue) { + Vue.directive('permission', permission) +} + +if (window.Vue) { + window['permission'] = permission + Vue.use(install) // eslint-disable-line +} + +permission.install = install +export default permission diff --git a/report-ui/src/components/Permission/permission.js b/report-ui/src/components/Permission/permission.js new file mode 100644 index 00000000..a49aba15 --- /dev/null +++ b/report-ui/src/components/Permission/permission.js @@ -0,0 +1,14 @@ +import store from '@/store' + +export default { + inserted(el, binding, vnode) { + const { value } = binding // v-permission 绑定的权限值 + const auths = store.getters && store.getters.authorities // 拥有的权限列表 + if (value) { + //auths.indexOf(value) === -1 && el.parentNode && el.parentNode.removeChild(el) + } else { + // 未绑定权限值或者绑定的权限值为 假 + return + } + }, +}