专注于武汉中小企业服务解决方案提供商

电脑维修、布线、安防监控、数据恢复、采购、回收

所属分类 > 家电维修 > 正文

vue路由权限 (vue路由权限控制路由表)

编辑:rootadmin
想要了解更多关于vue路由权限和vue路由权限管理的知识吗?那么本文将为您提供全面的介绍和解释,同时还会分享一些实用的技巧和建议。本文内容目录一览:1、vue-element-admin权限路由2、Vue实战篇|使用路由管理用户权限(动态路由)3、vue项目路由权限管理实现vue-element-admin权限路由1、java端:1.1、通过接口闷唯获取该用户的角色权限此处不再复述2、没态vue-element其主要处理是在这个文件2.2、permission.jsimportrouter,{asyncRoutes,constantRoutes}from'@/router'import{getAuthMenu}from'@/api/user'importLayoutfrom'@/蚂察培layout'/***Usemeta.roletodetermineifthecurrentuserhaspermission*@paramroles*@paramroute*/functionhasPermission(roles,route){if(route.metaroute.meta.roles){returnroles.some(role=route.meta.roles.includes(role))}else{returntrue }}/***Filterasynchronousroutingtable*yrecursion*@paramroutesasyncRoutes*@paramroles*/exportfunctionfilterAsyncRoutes(routes,roles){constres=[]routes.forEach(route={consttmp={...route}if(hasPermission(roles,tmp)){if(tmp.children){tmp.children=filterAsyncRoutes(tmp.children,roles)}res.push(tmp)}})returnres}conststate={routes:[],addRoutes:[],perms:[]}constmutations={SET_ROUTES:(state,routes)={state.addRoutes=routesstate.routes=constantRoutes.concat(routes)},ADD_LOGIN_USER_INFO:(state,data)={state.perms=data}}constactions={generateRoutes({commit},roles){returnnewPromise(resolve={constloadMenuData=[]//先查询后台并返回左侧菜单数据并把数据添加到路由   getAuthMenu(roles).then(response={letdata=responseif(response.code!==0){this.$message({message:'菜单数据加载异常',type:0     })}else{constpermis=response.persdata=response.menuListconsole.log('==============加载===========')Object.assign(loadMenuData,data)generaMenu(asyncRoutes,loadMenuData)constaccessedRoutes=asyncRoutes||[]//accessedRoutes.push({path:'*',component:()=import('@/views/error-page/'),hidden:true})     commit('ADD_LOGIN_USER_INFO',permis)commit('SET_ROUTES',accessedRoutes)router.addRoutes(accessedRoutes)resolve(accessedRoutes)}})})}}/***后台查询的菜单数据拼装成路由格式的数据*@paramroutes*//*exportfunctiongeneraMenu(routes,data){data.forEach(item={lettempUrl=item.*if(item.*===null){tempUrl=''}constmenu={path:item.*===null?item.ename:item.*,component:item.*===null?Layout:resolve=require([`@/views${tempUrl}`],resolve),children:[],name:'menu_'+item.menuId,meta:{title:item.name,id:item.menuId,roles:['admin'],icon:item.icon}}if(item.list){generaMenu(menu.children,item.list)}if(item.menuId!==-){routes.push(menu)}})}*/exportfunctiongeneraMenu(routes,data){data.forEach(item={if(item.state===0){lettypeParentId=''   if(item.parentId===0){typeParentId='noRedirect'   }lettempUrl=item.*New   if(item.*New===null){tempUrl=''   }if(item.parentId!==0item.*New===null){tempUrl='/'    item.*New='/'   }letmenu={}if(item.Identify===1){//需铺满屏幕(隐藏左侧导航栏)    menu={path:item.*New===null?item.ename:item.*New,hidden:item.type===2,children:[],name:'menu_'+item.menuId,redirect:typeParentId,meta:{title:item.name,id:item.menuId,roles:['admin'],icon:item.iconNew}}}else{menu={path:item.*New===null?item.ename:item.*New,component:item.*New===null?Layout:resolve=require([`@/views${tempUrl}`],resolve),hidden:item.type===2,children:[],name:'menu_'+item.menuId,redirect:typeParentId,meta:{title:item.name,id:item.menuId,roles:['admin'],icon:item.iconNew}}}if(item.list){generaMenu(menu.children,item.list)}routes.push(menu)}})}exportdefault{namespaced:true,state,mutations,actions}

整理分享vue路由权限 (vue路由权限控制路由表),希望有所帮助,仅作参考,欢迎阅读内容。

内容相关其他词:vue路由权限控制路由表,vue路由权限控制,角色判断,vue路由权限控制,vue路由权限控制路由表,vue路由权限控制,vue路由权限详解,vue路由权限控制,角色判断,vue路由权限控制,内容如对您有帮助,希望把内容链接给更多的朋友!

Vue实战篇|使用路由管理用户权限(动态路由)权限控制是后台管理*比较常见的需求,如果我们需要对某些页面的添加权限控制的话,那我们可以在路由管理中的权限做一些校验,没有通过权限校验的给出相应的提示或者直接跳转到报错页面。跟着我一起来学vue实战篇路由管理权限吧!getCurrentAuthority()函数用于获取当前用户权限,一般来源于后台数据check()函数用于权限的校验匹配isLogin()函数用于检验用户是否登备首录路由配置元信息meta:{authority:["admin"]}使用to.matched获取跳转路由的全部信息,包括父路由和子路由使用lodash中的判高findLast匹配离跳转路由配置权限的元信息引入auth.js中check()和isLogin()进行判断掘滚尺是否具有权限或是否已登录如果没有权限则给出提示信息后跳转到页面,未登录则返回登录页面运行结果当getCurrentAuthority()函数返回admin时,则菜单会显示所有元信息meta:{authority:["admin"]}的路由菜单;如返回值为user时,菜单会显示所有元信息meta:{authority:["user"]}的路由菜单接下来CrabFort会带大家一起实现更加精细化的权限设计(权限组件、权限指令)vue项目路由权限管理实现项目基于vue-element-admin基础之上进行开发,感谢花裤衩以及为此项目做出贡献的大佬[社会社会]!路由数据由后端控制,前端调用接口返回数据;前端拿到数据处理成可使用的路由结构,然后渲染到页面。为了能提供更多的功能,后端返回的数据结构是在原来菜单结构基础之上有所改动的。原路由数据结构:后端返回数据结构:路由数据采用多级嵌套结构,基本可以满足需求。拿到接口返回的数据之后还不能直接使用,需要经过一些处理。在本地的开发,新增页面时,为了方便开发,获取到后端返回的数据之后用了一个方法来合并数据:temporaryMenuArray临时路由数组的结构需要跟后端返回的数据结构一致。使用setTemporaryMenu:合并完临时的路由之后就开始进行路由的处理了。从上面后端返回的数据结构中可以看出,已经和需要处理成的路由很像了,但还是有一些数据没有必要在专门的*那里维护,所以需要一些其他数据的皮穗没处理:routesComponents为一个手动维护的页面路由文件:得到的userCanUseRouteModules结构如下:上面数据中的type为2、3层级的component已经被替换成对应页面的路由模块了。得到userCanUseRouteModules之后,其中name为storeManagement:head的那一层数据是供头部菜单使用的,其children的数据才是需要添加的路由数据:此时的asyncRoutes只放了默认匹配的路由,这个是需要放在所有路由的最后的:至此对路由的处理结束。处理路由这一步是放在router.beforeEach路由全局前置守卫里的,结合原有的逻辑进行了一些判断处理。因为路由数据是由后端数据处理得到的,只包含和挂载了当前用户能有权限访问的部分,没有权燃纳限访问的路由就没有被router.addRoutes添加,所以并没有在路由守卫里对每次路由的跳转都进行校族陪验。不要害怕调整路由器和WIFI设置。使用我们提供的指南和技巧,您可以轻松地自定义您的网络,以满足您的需求。

标签: vue路由权限控制路由表


本文链接地址:https://www.iopcc.com/jiadian/26488.html转载请保留说明!

上一篇:ZN416E电路的+1.5V电源设计 (1r4427s电路图)

下一篇:路由器可以设置限速吗 (路由器可以设置自动重启吗)

推荐内容:

JCM40D-4MD120电源板电路原理与维修 (40-l141w4-pwg1cg电源板电路图)

JCM40D-4MD120电源板电路原理与维修 (40-l141w4-pwg1cg电源板电路图)

。与JCMD-4MD电源板类似的还有JCMD-4MC电源,它们整体架构一样,区别在于LED输出电流和电压的高低。维修中,二者不能 ...

变压器额定电压正常值是多少? (变压器的额定电压是相电压还是线)

变压器额定电压正常值是多少? (变压器的额定电压是相电压还是线)

少,冲击电压发生器本体及整流变压器等的额定电压值,A相试验时变压器,B相试验时变压器的额定电压值等。变压器 ...

半球DSZF-50储罐式热水器不通电的检修思路 (半球sh—1001使用说明)

半球DSZF-50储罐式热水器不通电的检修思路 (半球sh—1001使用说明)

,故障表现为不通电。拆机检查,发现超温保护器的输入端电压为ACV,但超温保护器的输出端电压为0V;按压“复位 ...

格力凉之夏空调主板M518F3不通电的维修 (格力空调凉之爽1.5匹一级能效)

格力凉之夏空调主板M518F3不通电的维修 (格力空调凉之爽1.5匹一级能效)

理分享格力凉之夏空调主板M518F3不通电的维修(格力空调凉之爽1.5匹一级能效),希望有所帮助,仅作参考,欢迎阅读内 ...

两个路由器如何同时安装使用(2个路由器如何设置才能同时上网的方法分享) (两个路由器如何连接)

两个路由器如何同时安装使用(2个路由器如何设置才能同时上网的方法分享) (两个路由器如何连接)

由器怎么设置路由器亮红灯哪种故障路由器登录入口和光猫的区别路由器怎么重启路由器怎么连接路由器桥接教程详 ...

win11升级是否会清空数据详细介绍 (win11升级后会变慢吗)

win11升级是否会清空数据详细介绍 (win11升级后会变慢吗)

级体验一下。但是一般电脑中都会保存一些重要的文件,如果升级win会清空数据那就得不偿失了,因此下面小编就给 ...

笔记本电脑是什么 (笔记本电脑是什么时候发明的)

笔记本电脑是什么 (笔记本电脑是什么时候发明的)

不开使用电脑处理各项事务,其中就包括笔记本电脑。有些小能手用户不知道笔记本电脑是什么,笔记本电脑类型有 ...

神舟电脑怎么重装Win11系统?神舟电脑重装Win11系统教程 (神舟电脑怎么重置)

神舟电脑怎么重装Win11系统?神舟电脑重装Win11系统教程 (神舟电脑怎么重置)

脑的朋友也想要体验一下最新的Windows*,想知道有什么方法可以比较快速地进行重装,不需要用U盘的那种方法,这里 ...

如何挑选最适合制作启动盘的U盘 (如何挑选最适合的连身袜)

如何挑选最适合制作启动盘的U盘 (如何挑选最适合的连身袜)

,挑选一个合适的U盘来进行启动U盘制作就显得非常有必要。U盘作用虽然都相同,但是它会在容量、传输速度、硬件 ...

win10任务视图使用方法 (win10任务视图设置)

win10任务视图使用方法 (win10任务视图设置)

的用户们都不清楚一些快捷键怎么样,或者一些便捷的功能不知道该怎么去使用,那就快来看看详细的使用方法吧~整 ...

Copyright © 2023 武汉电脑维修 All Rights Reserved.

鄂ICP备2023003026号

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢!邮箱: opceo@qq.com