首页 > 其他分享 >多角色管理

多角色管理

时间:2024-04-08 09:46:55浏览次数:12  
标签:角色 管理 homeRoute item path 权限 路由 页面

  • [ 思路 ]
    • 游客,会员,管理员,不同身份对应的页面数量是不同的,所以再token中要对角色身份和权限进行标记
    • 服务端需要对前端页面进行权限统筹,针对不同权限的用户,返回相应权限范围的页面和导航数据。
    • 前端收到鱼用户权限相对应的页面和导航数据后,进行匹配渲染。
    • 在导航守卫中加入资源预请求,根据请求到的页面和信息,动态的添加路由上去。
      router.beforeEach(async (to, from, next) => {
        if(to.path === '/login') {
          next()
        }else {
          // 预先请求页面数据 
          const data = await getResource(); 
          // 将数据转换成路由配置
          const dynamicRoute = createDynamicRoute(data)
          // 动态的配置路由
          router.addRoute(dynamicRoute)
        }
      })
      function createDynamicRoute(res) {
        const homeRoute = routes.filter(v => v.path === '/home')
        homeRoute.children = []
        data.forEach(item => {
          homeRoute.children.push({ 
            path: item.path,
            name: item.name,
            component: () => import(`@/views/home/content/${item.component}/index.vue`)
          })
        })
        return homeRoute
      }
    

  • [ 性能优化 ]
    • 上述操作有一个问题,就是每次路由跳转都会去重复预请求页面数据,造成资源浪费
    • 通过缓存处理进行性能优化
    • 参考

    标签:角色,管理,homeRoute,item,path,权限,路由,页面
    From: https://www.cnblogs.com/anch/p/18120433

    相关文章

    • 21.SpringBoot项目_员工管理系统总结 中
      数据库层的准备首先首先用到mysql和mybatis1.依赖<!--lombok--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><!--数据层-->......
    • 项目管理软件怎么选?
      在选择项目管理软件时,需要重点考虑以下几个方面:可视化程度通过甘特图的方式直观展现了整个项目的任务安排、进度状况和时间线,这种可视化的特性让项目管理人员能够一目了然地把控项目全貌。好的项目管理软件应该具备出色的可视化能力,让数据更加清晰直观。 数据透明度好......
    • 【管理咨询宝藏49】AA银行上市发展提升分析报告
      本报告首发于公号“管理咨询宝藏”,如需阅读完整版报告内容,请查阅公号“管理咨询宝藏”。【管理咨询宝藏49】AA银行上市发展提升分析报告【格式】PPT版本,可编辑【关键词】战略规划、商业分析、管理咨询【强烈推荐】这是一套市面上非常罕见的完整银行战略分析系列报告,完整......
    • 【附源码】java毕业设计实验室管理系统
      本系统(程序+源码)带文档lw万字以上 文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:在当前的教育与科研环境中,实验室不仅是学术研究、科技创新的重要基地,也是培养学生实践能力和科学素养的关键场所。随着科学技术的不断进步和实验项目的日......
    • 产品经理功法修炼(5)之团队管理
      点击下载《产品经理功法修炼(5)之团队管理》产品经理功法修炼(1)之自我管理产品经理功法修炼(2)之专业技能产品经理功法修炼(3)之产品设计产品经理功法修炼(4)之产品管理产品经理功法修炼(5)之团队管理1.前言产品经理的能力修炼并非局限于某一技能的速成,而是需要全面参与到产品......
    • C++笔记打卡第六天(通讯录管理系统)
      1.结构体案例1每名老师带领5个学生,总共有3个老师。设计学生和老师的结构体,其中在老师的结构体中,有老师姓名和一个存放5名学生的数组作为成员。学生的成员有姓名、考试分数,创建数组存放3名老师,通过函数给每个老师及所带的学生赋值。最终打印出老师数据以及老师所带学生数据。#......
    • 发布版本?构建版本?聊聊持续交付中的版本号的设计和管理
      在研发过程中,大家都知道"版本",但是不同的人对"版本"的理解是不同的。大家都知道很重要,但是往往容易被忽视,特别是在持续交付过程中,笔者认为相当重要。因为只要有变更,就会有版本控制,随之而来就是版本号设计,以及不同阶段如何使用版本号。不同角色对“版本”的理解产品经理、客户......
    • 基于JSP+Mysql+HTml+Css宾馆酒店管理系统设计与实现
       博主介绍:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。所有项目都配有从入门到精通的基础知识视频课程,学习后应对毕业设计答辩。项目配有对应开发文档、开题报告、任务书、P......
    • Redis的前世今生(内存管理、持久化、高可用、集群 详解)一看就懂
      Redis的诞生:    redis的诞生和mysql脱不了关系,在redis还未出现时,用户的每次请求都是直接访问mysql,渐渐的人们发现,请求大部分都是读操作,而且很多都是重复的数据,磁盘的i/o是很慢的,所以人们就想,能不能学学cpu建立的缓存机制,mysql也搞一个缓存,就这样一个基于内存的数据库......
    • 土地管理系统:精准管理,助力土地资源高效利用
      在快速城市化和经济社会发展的今天,土地资源作为最基础的自然资源,其合理规划、高效管理和可持续利用对于保障国家粮食安全、促进区域经济发展和维护社会稳定具有重要意义。因此,构建一个全面、高效、智能的土地管理系统显得尤为迫切和必要。项目背景随着人口增长和......