vue 查看按钮权限指令

1.在 utils下创建js文件,并加入以下内容

import Vue from 'vue' //引入vue

// 按钮判断
function JudgeBtn (el, value, btns) {
  let isHas = false
  btns.forEach(item => {
    if (value === item) isHas = true
  })
  if (isHas) {
    el.style.display = 'inline-block'
  } else {
    el.style.display = 'none'
  }
}

export default function (btnData) {
  // 按钮权限数组
  let btns = []
  btnData.forEach(item => {
    if (item.vcactiontype !== 'PAGE.PERMISSION.TYPE.MU') {
      btns.push(item.vcactioncode)
    }
  })
  // 自定义指令,按钮权限控制
  Vue.directive('btn', {
    // 被绑定元素插入父节点时调用
    inserted (el, binding) {
      // 按钮判断
      JudgeBtn(el, binding.value, btns)
    },
    // 被绑定元素所在的模板更新时调用
    update (el, binding) {
      // 按钮判断
      JudgeBtn(el, binding.value, btns)
    }
  })
}

2.permission.js中获取菜单和按钮数据时,调用

 // 按钮权限控制 btnsAuth(response.data.data);

3.页面按钮权限控制

 <el-button type="primary" v-btn="按钮code" @click="onSubmit"  style="margin-bottom: 5px; " size="small">
              <i class="el-icon-search"></i>查询
 </el-button>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值