vue实战篇|使用路由管理用户权限(动态路由)

author author     2023-03-15     596

关键词:

参考技术A 权限控制是后台管理系统比较常见的需求,如果我们需要对某些页面的添加权限控制的话,那我们可以在路由管理中的权限做一些校验,没有通过权限校验的给出相应的提示或者直接跳转到报错页面。

跟着我一起来学vue实战篇路由管理权限吧!

getCurrentAuthority()函数用于获取当前用户权限,一般来源于后台数据

check()函数用于权限的校验匹配

isLogin()函数用于检验用户是否登录

路由配置元信息meta: authority: ["admin"]

使用to.matched获取跳转路由的全部信息,包括父路由和子路由

使用lodash中的findLast匹配离跳转路由配置权限的元信息

引入auth.js中check()和isLogin()进行判断是否具有权限或是否已登录

如果没有权限则给出提示信息后跳转到403页面,未登录则返回登录页面

运行结果

当getCurrentAuthority()函数返回admin时,则菜单会显示所有元信息meta: authority: ["admin"] 的路由菜单;

如返回值为user时,菜单会显示所有元信息meta: authority: ["user"] 的路由菜单

接下来CrabFort会带大家一起实现更加精细化的权限设计(权限组件、权限指令)

vue-element-template实战获取后端路由表动态生成权限(代码片段)

主要思路如下:用户登录login获取token拿着token请求用户信息,同时后端返回一个路由表前端解析后动态添加路由表,同时存储到本地localstorage刷新页面或者退出登录或者登录过期等时,会进行相应的判断,重新渲染路由1、在src/r... 查看详情

vue前后分离动态路由和权限管理方案

...态生成,对于比较细粒度的可以通过css来控制和隐藏方案使用vue-router的router.addRoutes(routes)来动态生成路由。注意事项vue-router是按照路由表里的顺序来查找路由的,如果你的404页面在动态 查看详情

vue实现动态路由

...角色的权限配置。通常需要后端返回路由列表,前端渲染使用到这里,整个动态路由就可以走通了,但是页面跳转、路由守卫处理是异步的,会存在动态路由添加后跳转的是空白页面,这是因为路由在执行next()时,router里面的数... 查看详情

vue动态路由(代码片段)

...b67989以后可能用的上通常我们在vue项目中都是前端配置好路由的,但在一些项目中我们可能会遇到权限控制,这样我们就涉及到动态路由的设置了。动态路由设置一般有两种:(1)、简单的角色路由设置:比如只涉及到管理员和普... 查看详情

vue权限控制——动态注册路由(代码片段)

...栏的菜单列表内容,然后还要动态注册对应子菜单的路由菜单列表内容应该通过后端接口返回:sort为1表示当前项有子菜单sort为2表示当前项没有子菜单,这个才是需要我们去动态注册的组件前端需要根据后端返回的... 查看详情

vue-router怎么动态配置,比如根据用户权限不同显示路由

1、vue-router怎么动态配置,比如根据用户权限不同显示路由如上图,我想根据用户权限不同,动态添加删除菜单下面是路由配置constroutes=[path:'/',component:Home,name:'系统管理',iconCls:'el-icon-setting',children:[path:'/Page1... 查看详情

前端权限控制-基于vue-router的动态路由实现

...在用户访问时也需要基于用户权限做相应控制。针对前端使用vue框架的情况,对页面一级的权限控制,常规处理是在页面导航栏通过控制导航显隐控制权限,但在浏览器地址栏输入访问路径依然可以访问,可以用vue-router的动态... 查看详情

vue前端用户权限控制大全

...ken通过自定义指令进行按钮权限的判断自定义权限指令在使用的按钮中只需要引用v-has指令全局路由守卫里做判断每次路由跳转的时候都要判断权限,这里的判断也很简单,因为菜单的name与路由的name是一一对应的,而后端返回... 查看详情

vue项目权限管理

...限管理般需求是两个:权限和按钮权限。前端案会把所有路由信息在前端配置,通过路由守卫要求户登录,户登录后根据过滤出路由表。如我会配置个asyncRoutes数组,需要认证的在其路由的meta中添加个roles字段,等获取户之后取... 查看详情

vue开发实战实战篇#29:如何设计一个高扩展性的路由(代码片段)

说明【Vue开发实战】学习笔记。设计嵌套路由设计嵌套路由跟文件夹匹配添加404路由importNotFoundfrom"../views/404"; path:"*", name:"404", component:NotFound添加nprogress进度条安装nprogressnpminprogress-S使用:https://git 查看详情

vuevue的路由权限管理

前言:最近闲来无事浏览各种博客,看到了一个关于路由权限的管理,觉得很有用,针对那个博客,准备自己写一个demo。实现:路由大致分为用户路由<特定用户才能浏览>和基本路由<所有用户都能访问>知识点:1. vue... 查看详情

前端权限控制

...路由的配置,把那个用户的路由单独添加到路由列表中,使用addroutes添加更改后到路由配置,添加动态路由的方法调用在app.vue的created中,因为每次加载页面都会调用该方法。第二菜单控制:根据用户的不同菜单栏也不同,该问题... 查看详情

项目总结:中后台管理系统类(代码片段)

项目类一:中后台管理系统类中后台系统类多为内部人员使用。采用Vue+elementUI开发。技术选型的理由有以下几点:此类项目多为表单、列表、数据看板,vue生态有成熟的解决方案。产品设计风格与elementUI设计风格相近。团队成... 查看详情

前端vue+elementui案例:通用后台管理系统-登陆不同用户显示不同菜单动态添加路由(代码片段)

...修改的代码文件tab.js参考视频:VUE项目,VUE项目实战,vue后台管理系统,前端面试,前端面试项目案例链接【前端】Vue+ElementUI案例:通用后台管理系统-导航栏(视频p 查看详情

vue开发实战生态篇#20:选择何种模式的路由及底层原理

说明【Vue开发实战】学习笔记。路由类型Hash模式:丑,无法使用锚点定位History模式:需要后端配合,IE9不兼容(可使用强制刷新处理)底层原理原理图如下 查看详情

vue-router(五):动态路由(1)

参考技术A一般路由是在router/index.js里面设置的,这样我们有了一套固定的路由。但是有的时候我们需要在运行时可以动态设置一些路由,最常见的就是后台管理。用户登录后,根据用户的角色、权限,加载对应的路由。这样感... 查看详情

vue基于d2-admin的rbac权限管理解决方案(代码片段)

前两篇关于vue权限路由文章的填坑,说了一堆理论,是时候操作一波了。vue权限路由实现方式总结vue权限路由实现方式总结二选择d2-admin是因为element-ui的相关开源项目里,d2-admin的结构和代码是让我感到最舒服的,而且基于d2-admin... 查看详情

vue动态添加路由addroutes之不能将动态路由存入缓存(代码片段)

在我不知道vue的路由还可以通过addRoutes动态添加时,我只知道vue的路由都是写死在路由表中的,每当跳转时再去加载相应的路由。直到在一个新公司接到需要根据用户的权限显示不同的菜单的需求时才知道了原来vue-router还有一... 查看详情