时间:2021-05-26
在项目中经常有需求要根据用户的权限对界面上的元素进行控制,这里介绍了一直简单的实现,仅供参考。
当前用户的权限列表储存在 store 里,也可以是其他地方。
指令
// src/directives/permission.jsimport Vue from 'vue';import store from '@/store';import {get} from '@/utils';// 是否有权限const hasPermission = userPermission => { let userPermissionList = Array.isArray(userPermission) ? userPermission : [userPermission]; // 当前用户的权限列表 let permissionList = get(store, 'getters["user/permission"]', []); return userPermissionList.some(e => permissionList.includes(e));};// 指令Vue.directive('per', { bind: (el, binding, vnode) => { if (!hasPermission(binding.value)) { el.parentNode.removeChild(el); } }});// 全局判断方法Vue.prototype.$_has = hasPermission;使用方法
在 mian.js 引入
<div v-per="[admin]"> admin 可见 是否为admin:{{$_has('admin')}} //true<div>总结
以上所述是小编给大家介绍的Vue 指令实现按钮级别权限管理功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1.Vue指令 Vue提供自定义实现指令的功能,和组件类似,可以是全局指令和局部指令,详细可以参见vue官网自定义指令一节(https://cn.vuejs.
在用户登陆后,根据用户id读取用户的所有权限数据,放入本地的storage进行存储,之后,定义指令,如果用户含有此按钮权限,则在页面显示出来:/**权限指令**
今天我们将利用vue的条件指令来完成一个简易的动态变色功能按钮首先我们还是要对vue进行配置,在上篇随笔中有相关下载教学.然后我们要在html页面上搭建三个简易
目标使用vue2.0实现自定义弹窗指令,当标签有该指令时,点击标签可以弹出弹窗实现Document点击我弹窗哈哈哈Vue.directive('popup',{
本文实例讲述了Vue自定义指令功能。分享给大家供大家参考,具体如下:自定义指令自定义指令{{num}}加一解绑functionunbind(){//vue提供的