vue3 实现按钮权限管理

news2025/1/12 6:19:38

在做后台管理系统时,经常会有权限管理的功能,这里来记录一下关于按钮权限管理的实现方法

1、自定义指令 v-permission。新建js文件用来写指令代码。

export default function btnPerms(app) {
    app.directive('permission', {
        mounted(el, binding) {
            if (!permsJudge(binding.value)) {
                el.parentNode.removeChild(el);
            }
            function permsJudge(value){
                let perms = JSON.parse(localStorage.getItem('perms')) || [];
                for (let item of perms) {
                    if (item === value) {
                        return true;
                    }
                }
                return false;
            }
        }
    });
}

2、在main.js里注入;

3、在登录后台时获取后端返回的用户权限数据,并且存入到本地;我这边是把获取数据的接口放在vuex中的

async _getUserPermission(contxt,payload){
     let res = await getUserPermission();
     if(res && res.data){
        let {code,data,message} = res.data;
        if(code == 200){
           localStorage.setItem('perms',JSON.stringify(data.resourceList));
           contxt.commit('getPerObj',data.resourceList);
        }else {
           reject(message)
        }
    }
}

然后在登录页面调用这个方法;也可以直接在登录页面获取数据,这里就不赘述了。

 获取的数据大概是这个格式

 4、在需要判断权限的按钮调用指令;

 这样就可以实现按钮权限了,如有问题,欢迎留言!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/917633.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用动态IP是否会影响网络

今天我们要谈论的话题是关于动态IP和网络的关系。也许有些小伙伴对这个概念还比较陌生,但别担心,我会简单明了的给你理清楚。让我们一起看看动态IP到底能否影响到网络。 首先,我们先来搞明白什么是动态IP。在互联网世界中,每一个连…

开源容灾备份软件,开源cdp备份软件

数据的安全性和完整性面临着硬件问题、黑客攻击、人为错误等各种威胁。在这种环境下,开源容灾备份软件应运而生,通过提供自动数据备份和恢复,有效地保证了公司的数据安全。 一、开源容灾备份软件的定义和作用 开源容灾备份软件是一种基于开源…

ConfigMap(可变应用配置管理)

实验环境 实验环境: 1、win10,vmwrokstation虚机; 2、k8s集群:3台centos7.6 1810虚机,1个master节点,2个node节点k8s version:v1.22.2containerd://1.5.5实验软件(无) 1 基础知识 1.1 什么是ConfigMap(可变配置管理…

【算法日志】动态规划:动态规划简介及其简单应用(day33)

算法随想录刷题60Day 目录 动态规划简介 动态规划简单应用 斐波那契 爬楼梯 使用最小开支爬楼 动态规划简介 动态规划(Dynamic Programming)是一种解决复杂问题的算法设计思想。它的主要思路是将原问题拆分若干个子问题,并分别求解这些子问题,最后将…

如何轻松打造美容行业预约小程序,无需编程基础

随着移动互联网的快速发展,小程序已经成为了很多企业和个人开展业务的重要阵地。而在美容行业,开发一款美容预约小程序无疑是一个非常有前景的选择。本文将介绍如何使用乔拓云平台,通过简单的几步操作,制作出一款功能强大的美容预…

Mybatis配置说明

目录 创建maven项目,添加mybatis,mysql依赖的jar包 创建mybatis全局配置文件,配置数据库连接信息,配置sql映射文件 创建sql映射文件 创建一个访问接口 测试 mybatis原是apache的一个开源项目,2010年转投谷歌,从ibtais3.0开始改名为myba…

Ansible 临时命令搭建安装仓库

创建一个名为/ansible/yum.sh 的 shell 脚本,该脚本将使用 Ansible 临时命令在各个受管节点上安装 yum 存储库. 存储库1: 存储库的名称为 EX294_BASE 描述为 EX294 base software 基础 URL 为 http://content/rhel8.0/x86_64/dvd/BaseOS GPG 签名检查为…

【附安装包】Midas Civil2019安装教程

软件下载 软件:Midas Civil版本:2019语言:简体中文大小:868.36M安装环境:Win11/Win10/Win8/Win7硬件要求:CPU2.5GHz 内存4G(或更高)下载通道①百度网盘丨64位下载链接:https://pan.…

solidity0.8.0的应用案例11:透明代理合约

选择器冲突 智能合约中,函数选择器(selector)是函数签名的哈希的前4个字节。例如mint(address account)的选择器为bytes4(keccak256("mint(address)")),也就是0x6a627842. 由于函数选择器仅有4个字节,范围很小,因此两个不同的函数可能会有相同的选择器,例如…

【正点原子STM32连载】第二十章 通用定时器脉冲计数实验 摘自【正点原子】APM32F407最小系统板使用指南

1)实验平台:正点原子stm32f103战舰开发板V4 2)平台购买地址:https://detail.tmall.com/item.htm?id609294757420 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html# 第二…

页眉横线怎么删除?4个方法,高效删除!

“刚写了一篇文章,但格式上出了点问题,页眉上一直有一条横线,想把它删掉但是一直都删不掉。这是为什么呢?有什么方法可以删除页眉横线吗?” 在使用Word时,用户可以按个人的需求对页面进行调整。在页眉上可以…

老铁,测试小白也可以飙车了!XMind2TestCase,逼格满满!

目录 一、XMind测试用例通用模板 二、导入TestLink 三、导入禅道(ZenTao) 四、使用Web转换工具 总结 “ 测!不!用!脑?别傻了,用XMind2TestCase,测试更轻松,更牛掰! …

移动端和PC端对比【组件库+调试vconsole +构建vite/webpack+可视化echarts/antv】

目录 组件库 移动端 vue vant PC端 react antd vue element 调试:vconsole vs dev tools中的控制台(Console) ​​​​​​​vconsole:在真机上调试 构建工具 webpack 原理 Babel:JS编译器(…

学员心得 | 突破瓶颈!云计算HCIE帮我走出职场舒适区

大家好,我是誉天云计算的吴同学,是安徽的一名“大龄考生”。读研后我已工作多年:在上海奋斗七年,回到老家又安稳了十年。这期间做过领导,也当过小兵,起起伏伏走到今天,才发现职业与技术都已然面…

7年测试经验之谈 —— 编写一个接口自动化测试程序

下面是一个简单的接口自动化测试程序的示例,使用requests库发送HTTP请求并使用unittest框架进行断言: import requests import unittestclass ApiTests(unittest.TestCase):def setUp(self):self.base_url "http://api.example.com/"def tes…

C# 工厂模式

一、概述 工厂模式(Factory Pattern)是一种创建型设计模式,它提供了一种创建对象的最佳方式。在C#中,工厂模式通过定义一个公共接口或抽象类来创建对象,而具体的对象创建则由工厂类来实现。 工厂模式主要包含三个角色…

Jmeter性能测试 —— TPS拐点寻找

寻找TPS性能拐点1、准备脚本①在本地电脑调试Jmeter压测脚本 寻找TPS性能拐点1、准备脚本①在本地电脑调试Jmeter压测脚本 2、执行压力测试①执行压测脚本 jmeter –n –t xianchengzuse.jmx ②记录业务压测数据 3、监控服务器性能指标 ①监控CPU输入top命令 ②监控内存 fre…

AcrelEMS-HIM高速公路综合能效解决方案-安科瑞黄安南

高速公路供配电行业背景 合能效解决方案 高速公路电力监控及综合能效管理系统 高速公路典型硬件

游戏中的图片打包流程,免费的png打包plist工具,一款把若干资源图片拼接为一张大图的免费工具

手机游戏开发中,为了提高图片渲染性能,经常需要将小图片合并成一张大图进行渲染。如果手工来做的话就非常耗时。TexturePacker就是一款非常不错方便的处理工具。TexturePacker虽然非常优秀,但不是免费的。 对于打包流程,做游戏的…

读SQL学习指南(第3版)笔记03_创建和填充数据库

1. 创建数据表 1.1. sql CREATE TABLE person(person_id SMALLINT UNSIGNED,fname VARCHAR(20),lname VARCHAR(20),eye_color CHAR(2),birth_date DATE,street VARCHAR(30),city VARCHAR(20),state VARCHAR(20),country VARCHAR(20),postal_code VARCHAR(20),CONSTRAINT pk_p…