RBAC 权限设计-按钮级别权限-自定义指令(directive)

717 阅读1分钟

权限不同所能做的操作也会不同,因此权限可以控制在按钮级别,通过 v-if 可以来判断按钮的存在与否,在这里给大家推荐一种高端大气上档次的写法 自定义指令

在 main.js 里面定义全局自定义指令

// 自定义指令-控制按钮级别权限
Vue.directive('hide', {
  inserted(el, binding) {
    // 判断是否有某个按钮权限,没有的话就删除该按钮
    if (!store.state.user.userInfo.roles.points.includes(binding.value)) {
      // 原生方法 找父级 parentNode,删除子节点 removeChild
      el.parentNode.removeChild(el)
    }
  }
})

根据权限来添加自定义指令即可