hasRole.js 672 B

12345678910111213141516171819202122232425262728
  1. /**
  2. * v-hasRole 角色权限处理
  3. * Copyright (c) 2019 ruoyi
  4. */
  5. import store from '@/store'
  6. export default {
  7. inserted(el, binding, vnode) {
  8. const { value } = binding
  9. const super_admin = "admin";
  10. const roles = store.getters && store.getters.roles
  11. if (value && value instanceof Array && value.length > 0) {
  12. const roleFlag = value
  13. const hasRole = roles.some(role => {
  14. return super_admin === role || roleFlag.includes(role)
  15. })
  16. if (!hasRole) {
  17. el.parentNode && el.parentNode.removeChild(el)
  18. }
  19. } else {
  20. throw new Error(`请设置角色权限标签值"`)
  21. }
  22. }
  23. }