码迷,mamicode.com
首页 > 其他好文 > 详细

vue自定义指令实现按钮级权限

时间:2021-03-10 13:37:17      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:export   iss   remove   class   pre   button   tom   tno   引入   

1、创建指令文件bthPermission.js,编写自定义指令:

import Vue from vue;
import api from "api";
/**权限指令**/
const has = Vue.directive(has, {
  bind: async function (el, binding, vnode) {
    // 权限编码
    let permitCode = binding.value;
    // 异步请求,判断是否存在权限
    let res = await api.request(getBusinessRelation, { permitCode });
    let hasPermit = res.data.hasPermit;
    // 若不存在权限则移除权限按钮
    if (!hasPermit) {
      el.parentNode.removeChild(el);
    }
  }
})

export {
  has
}

2、在main.js中引入文件

import has from "./utils/bthPermission.js";

3、在页面中使用

<el-button slot="append" v-has="‘all_marketing‘" @click="skipEdit(1,‘‘)" size="mini">+ 新建任务</el-button>

 

参考自定义指令官方文档: https://cn.vuejs.org/v2/guide/custom-directive.html

 

vue自定义指令实现按钮级权限

标签:export   iss   remove   class   pre   button   tom   tno   引入   

原文地址:https://www.cnblogs.com/qlongbg/p/14509929.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!