• vue--按钮级别的权限控制+插件的使用


    实现原理是根据v-if=true则展示按钮,否则不展示。

    实现步骤:

    1,用户登录成功后,将获取到的permissions放到localStorage进行保存。

    2,写一个全局方法。此方法的入参为当前按钮的权限,比如somebtn:edit。最终输出的是布尔值,当前用户是否拥有此按钮的权限。

    3,在组件中使用此方法。

    具体讲讲第2步的全局方法应该怎么使用:

    全局方法的理论,他其实是向vue实例(Vue.prototype)添加的一个方法,这个方法在Vue初始化之前进行添加,这样Vue实例化之后,所有的组件都可以使用这个方法。根本上讲,就是Vue构造函数的一个实例方法。

    使用方法,官方简单介绍了一下,那么这里就稍微详情的讲一下:

    1,新建一个hasAuth.js文件,export的是Plugin:

     1 let permissonFromStorage= window.localStorage;
     2 
     3  
     4 
     5 Plugin.install = function (Vue) {
     6 
     7   Vue.prototype.$auth = function (permission) {
     8 
     9     return permissonFromStorage.indexOf(permission)>-1;
    10 
    11   };
    12 
    13 };
    14 
    15 Vue.use(Plugin);
    16 
    17  
    18 
    19 export default Plugin;

    2,main.js中,引入hasAuth

     1 import '@plugins/globalMethod'; 

    3,页面上使用:

    1 Data:
    2 
    3 data(){
    4 
    5 return{
    6 
    7 hasSomeAuth:this.$auth(‘btn:edit’)}
    8 
    9 }

    Template:

    <button v-if=”hasSomeAuth”>按钮</button>

  • 相关阅读:
    被学长教会的高斯消元法Gauss
    KMP字符串匹配算法翔解❤
    fkwの题目(祝松松生日快乐!)
    NOI-linux下VIM的个人常用配置
    从2017年暑假到现在手打的模板↑_↑
    【テンプレート】初级数据结构
    【テンプレート】高精
    DP(第二版)
    luogu P1029 最大公约数和最小公倍数问题
    贪心题整理
  • 原文地址:https://www.cnblogs.com/new-dream-new-hope/p/13753577.html
Copyright © 2020-2023  润新知