二开项目权限应用全流程-按钮级控制

二开项目权限应用全流程-按钮级控制

员工A和员工B都可以访问同一个页面(以员工管理为例),但是员工A可以导出excel,员工B就不可以导出excel(看不到按钮)

思路

用户登陆成功后,用户可以访问的按钮级别权限保存在points数组中。而这个数据我们是保存在vuex中的,所以,就可以在项目的任意地方来中访问。

  • 如果某个按钮上的标识在points出现,则可以显示出来

解决按钮级别的权限验证

在main.js中,定义全局指令

// 注册一个全局自定义指令 `v-allow`
Vue.directive('allow', {inserted: function(el, binding) {// 从vuex中取出points,const points = store.state.user.userInfo.roles.points// 如果points有binding.value则显示if (!points.includes(binding.value)) {el.remove()}}
})

使用

<el-button
+           v-allow="'import_employee'"type="warning"size="small"@click="$router.push('/import')">导入excel</el-button>

这里的:'import_employee'是从标识符来的

RBAC权限设计思想

在这里插入图片描述

一种基于角色的设计思想

  1. 给员工配置角色 (一个员工可以拥有多个角色)
  2. 给角色配置权限点 (一个角色可以有多个权限点)

员工只要有了角色之后,就自动拥有了角色绑定的所有权限点

员工得到权限数据

​ 员工信息接口中有当前员工的所有权限数据

userInfo:{
roles: {
menus: [], // 菜单权限数据
points: [] // 按钮权限数据
}
}

使用权限数据做具体的权限处理

  1. 菜单权限控制
    登录 > 菜单权限数据 > 和本地的所有的动态路由数据做匹配出具 > 得到根据权限筛选之后的动态路由数据

    1. 添加到路由系统中 (可以根据路径标识渲染组件 addRoutes
  2. 添加到左侧菜单渲染 (vuex管理 + v-for遍历)

  3. 按钮权限控制
    登录 > 按钮权限数据 > 使用按钮单独的权限标识 去权限数据里面查找
    自定义指令

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

VISIO使用技巧汇总

0.连接线拐弯或者连接不合适 0-0.Goal ​​​​​​​ 0-1. Automatic connection 0-3.Resolvent 0-3-0.ALTF9选项&#xff0c;取消粘附位置调整 0-3-1.选中线段-选中中心点-shift增加直角调整合适位置

Microsoft Visio 直线连接线

Microsoft Visio 直线连接线 1. 连接线 2. 直线连接线 3. 直线连接线图 References https://yongqiang.blog.csdn.net/

visio画太极图

步骤一 添加两个圆&#xff0c;且大圆的半径是小圆的2倍。 步骤二 往小圆添加一条直线作为直径 步骤三 选中小圆和直径,依次点击开发工具–操作–连接&#xff0c;然后选中连接后的小圆&#xff0c;再依次点击开发工具–操作–修建&#xff0c;可以分离出如下所示的两个…

visio 2007 画直线和矩形

visio 2007 画直线和矩形 1.问题描述 在一些图形中如果直接用连接线&#xff0c;会直接连到一些不理想的位置&#xff0c;而2007中不像2013及其以后那些版本中&#xff0c;有侧边栏能够直接画直线。 2.解决方式 直接选择工具栏中的红圈中的图标 能够生成红圈中的工具栏 然…

Visio对mysql怎么画er图_怎么用Visio画ER图

展开全部 画法如下&#xff1a; 1、由于Visio 2003默认的绘图模板并没有32313133353236313431303231363533e4b893e5b19e31333339653661E-R图这一项&#xff0c;但是画E-R图必须的基本图形Visio 2003还是有的&#xff0c;所以就得先把必要的图形添加到“我的模板”。以添加椭圆和…

Visio2010中设置线为直线

Visio2010中设置线为直线 在Visio2010中默认的线不是直线而是曲线&#xff0c;在画图中需要使用直线时要进行设置&#xff0c;下面介绍Visio2010中设置直线的方法。 1、打开Visio2010&#xff0c;然后点击设计&#xff1a; 2、点击调整大小下面的三角&#xff1a; 3、进入页面…

visio绘制流程图连接线总拐弯

描述 如图所示绘制流程图的连接线总拐弯 很让我强迫症发作 可以看到垂直的连接线总是会自动拐个弯 相关技巧 有说连接线中间点可以控制和增加中间点 或者按住shift 进行调整 这个还没研究明白咋操作不过没解决本质问题 此外还可以右键修改连接线属性 还可以在设计中进行调…

visio插入箭头_visio流程图中画箭头

visio流程图中画箭头 随着社会和经济的发展,电脑visio 2019软件已经成为我们生活中必不可少的一部分。visio 2019软件常常被我们使用于流程图的制作,很多第一次接触的朋友们不知道怎么在visio 2019软件制作流程图,接下来就让小编来教你们吧。 具体如下: 1. 第一步,打开电脑…

visio绘图小技巧

1.如何在图框的任意位置添加点&#xff1f; 先选中x点指令&#xff0c;再按住ctrl键&#xff0c;即可在任意位置画点 2.如何画出锯齿形线段&#xff1f; visio里面好像没有现成的锯齿形线段&#xff0c;所以可以利用直线反复折画&#xff0c;但是这里有个小技巧&#xff0c;就…

Visio简单画图使用方法

Visio使用方法 相信有很多初学者跟我一样&#xff0c;只会使用Word进行简单的画图。本章主要讲述如何使用Visio来画图&#xff08;版本为2010&#xff09; 一、系统流程图、数据流程图、ER图画法 1.打开Visio软件&#xff0c;创建简单模板 2.根据需求点击左侧"基本流程…

设计模式之~外观模式

定义&#xff1a; 为子系统中的一组接口提供一个一致的界面&#xff0c;此模式定义了一个高层接口&#xff0c;这个接口使得这一子系统更加容易使用。 结构图&#xff1a; 区分中介模式&#xff1a; 门面模式对外提供一个接口 中介模式对内提供一个接口 优点&#xff1a; 松耦…

【xv6操作系统】安装、运行与调试

一、构建、装入过程 1.编写“启动代码主体代码”&#xff08;在下载的xv6的原始代码上进行修改&#xff09; 2.源代码进行编译、链接生成系统镜像&#xff08;elf格式的目标文件&#xff09; 3.将系统镜像保存起来&#xff08;如保存到磁盘、flash或者网络服务器上&#xff…

spring入门(面试题)

Spring框架的核心&#xff1a;IoC容器和AOP模块。通过IoC容器管理POJO对象以及他们之间的耦合关系&#xff1b;通过AOP以动态非侵入的方式增强服务。 IoC让相互协作的组件保持松散的耦合&#xff0c;而AOP编程允许你把遍布于应用各层的功能分离出来形成可重用的功能组件。 IO…

spring 入门

Spring 是什么(1) Spring 是一个开源框架.  Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能.  Spring 是一个 IOC(DI) 和 AOP 容器框架. Spring 是什么(2) 具体描述 Spring:  轻量级&#xff1a;Spring 是非侵入性…

spring入门--spring入门案例

spring是一个框架&#xff0c;这个框架可以干很多很多的事情。感觉特别吊。但是&#xff0c;对于初学者来说&#xff0c;很难理解spring到底是干什么的。我刚开始的时候也不懂&#xff0c;后来就跟着敲&#xff0c;在后来虽然懂了&#xff0c;但是依然说不明白它到底是干啥的。…

Spring入门示例

开发环境 Spring 4.3.0Myeclipse2015JDK1.8 准备阶段&#xff1a; 1、新建一Spring01项目&#xff0c;然后新建一个lib文件。将下面的添加到lib文件中 2、将lib文件所有的包导入项目 开发步骤&#xff1a; 1、新建一个Hello.java的类 1 package com.proc.bean;2 3 public class…

Spring入门详解

准备开始看看Spring源码&#xff0c; 所以把Spring复习一遍&#xff0c;做下笔记.. 一. Spring的4种关键策略&#xff1a; 1. 基于POJO的轻量级和最小入侵编程(基本不出现在业务逻辑中&#xff0c; 不用强制实现接口之类的)&#xff1b; 2. 通过依赖注入和面向接口来实现松耦…

1.Spring入门

一、Spring入门 1.Spring 入门 Spring 整体框架&#xff1a; 什么是IOC&#xff1f; IOC&#xff1a;Inversion of Control&#xff08;控制反转&#xff09;&#xff0c;即将对象的创建权反转给&#xff08;交给&#xff09;spring。 spring包含的文件&#xff1a; docs&am…

spring入门例子

Hello World入门 2.5.1、准备开发环境和运行环境&#xff1a; ☆开发工具&#xff1a;eclipse ☆运行环境&#xff1a;tomcat6.0.20 ☆工程&#xff1a;动态web工程&#xff08;springmvc-chapter2&#xff09; ☆spring框架下载&#xff1a; spring-framework-3.1.1.RELEASE-w…

Spring入门

Spring框架的设计理念 Spring的骨骼架构 Spring总共有十几个组件&#xff0c;但真正核心的组件只有几个&#xff0c;下面是Spring框架的总体架构图 图1 .Spring 框架的总体架构图 从图中可以看出&#xff0c;Spring框架中的核心组件只有三个&#xff1a;Context&#xff0c;Co…