位置: IT常识 - 正文

若依(ruoyi)框架:如何实现灵活自定义路由配置(若依框架是什么框架)

编辑:rootadmin
若依(ruoyi)框架:如何实现灵活自定义路由配置 如何灵活自定义路由配置业务背景如何实现方式一:直接在前端路由表(router/index.js)里面某个路由的meta属性里面配置。方式二:在后台返回动态路由的接口中组装meta信息如何改造效果展示使用方法总结业务背景

推荐整理分享若依(ruoyi)框架:如何实现灵活自定义路由配置(若依框架是什么框架),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:若依idea,若依框架是什么框架,若依框架好用吗,若依框架简介,若依框架是谁家的,若依框架是干嘛的,若依框架简介,若依框架系列视频教程,内容如对您有帮助,希望把文章链接给更多的朋友!

随着项目的深入开发,我们可能会对路由做特殊化处理。比如:访问路由A时需要传入routerType=A,前端会根据routerType=A做一些特殊的处理。

如何实现方式一:直接在前端路由表(router/index.js)里面某个路由的meta属性里面配置。若依(ruoyi)框架:如何实现灵活自定义路由配置(若依框架是什么框架)

这种方法可用于公共路由或固定路由中,而现实开发过程中我们经常遇到的对某个菜单路由的做特殊化处理。还有经常遇到对动态路由的特殊化处理。所以就需要第二种方式。

方式二:在后台返回动态路由的接口中组装meta信息

在若依框架中,获取路由信息接口 /getRouters 中是对存在sys_menu表里的菜单数据进行拼装。

如何改造

步骤:

在sys_menu表中增加一个属性 meta。将 RouterVo 类中的 private MetaVo meta 改为 private Map<String,Object> meta在 SysMenuServiceImpl类里增加 assembleMeta方法。/** * 装配路由的Meta信息 * * @param menu 菜单 * @return Map类型 */ public Map<String,Object> assembleMeta(SysMenu menu) { Map<String,Object> meta = new HashMap<>(); if (StringUtils.isNotEmpty(menu.getMenuName())) { meta.put("title",menu.getMenuName()); } if (StringUtils.isNotEmpty(menu.getIcon())) { meta.put("icon",menu.getIcon()); } if (StringUtils.isNotEmpty(menu.getIsCache())) { meta.put("noCache",StringUtils.equals("1", menu.getIsCache())); } if (StringUtils.isNotEmpty(menu.getPath())) { meta.put("link",menu.getPath()); } //往路由里面添加扩展元数据 if (StringUtils.isNotEmpty(menu.getMeta())) { try { Map<String,Object> metaInfo = (Map<String,Object>)JSONObject.parse(menu.getMeta()); meta.putAll (metaInfo); } catch (Exception e) { log.error("元数据JSON数据转换异常{}", e.getMessage()); } } return meta; }将 SysMenuServiceImpl类里的buildMenus方法中setMeta(new MetaVo(menu...))改为setMeta(assembleMeta(menu))。效果展示

使用方法router.beforeEach((to, from) => { // 而不是去检查每条路由记录 if (to.meta.routerType === 'A') { console.log("做一些特殊的处理.....") return { path: '/login', // 保存我们所在的位置,以便以后再来 query: { redirect: to.fullPath }, } }})总结

以上只是在实际开发过程中,根据实际需要做个一下改造,个性化比较强。你也可以在你的项目中做适合自己项目的改造。

本文链接地址:https://www.jiuchutong.com/zhishi/288935.html 转载请保留说明!

上一篇:伫立枝头的旅鸫鸟,加拿大 (© marcophotos/Getty Images)

下一篇:nvidia显卡驱动、cuda、cudnn、tensorflow对应版本(nvidia显卡驱动怎么安装)

  • 增量留抵税额会计处理
  • 个人所得税的账务处理
  • 企业所得税要交多少税
  • 库存股是什么科目的备抵
  • 外出经营涉税事项报告
  • 差额发票能不能报销
  • 个人提供技术服务费开票税率
  • 分支机构需要填报企业所得税纳税申报表吗
  • 房地产企业可以贷款吗
  • 企业公益金账务的会计处理怎么做
  • 小规模纳税人开具增值税专用发票
  • 费用跨年入账所得怎么算
  • 生产用电费
  • 车辆保险赔款怎么入账
  • 不开发票的收入如何申报纳税
  • 12月了还没找到工作怎么办
  • 领用工程物资的进项税要转出么
  • 股权转让个人交的印花税可以入账吗
  • 营改增后对外投资无形资产是否需要交增值税呢?
  • 土地租赁需要交土地使用税吗
  • 不涉及税收
  • 按次申报是什么意思
  • 企事业承包承租方缴纳的管理费税费
  • 计提的管理费用要结转吗
  • 会计明细账簿包括哪些
  • 销售方销售折让的会计处理
  • 贷款利息可以抵扣吗
  • 下列各项支出中,允许用现金支付的有
  • 成品加工为另一个产品
  • 净资产收益率摊薄
  • 应收账款转账
  • 拍卖公司收入计入什么分录
  • 公司处于亏损状态,股东要退股怎么办
  • 公司收到财政拨付办公经费
  • 公司支付保洁费可以付给个人吗
  • 增值税防伪税控系统
  • 公司怎么查已报销发票
  • 固定资产提足折旧后报废怎么处理
  • 增值税如何形成欠税
  • 离职后原单位不给开离职证明
  • php使用什么开发工具
  • 个人合伙企业如何计算个人所得税
  • 什么叫自适应控制
  • vue3环境搭建
  • 新注册企业实收资本没到账怎么处理
  • 非公党建党费收缴
  • 工资与劳务报酬是否合并缴纳个税
  • wordpress运行缓慢
  • 怎么摊销租金
  • sql server 递归
  • 开个人劳务票需要本人去吗
  • 会计账务处理程序有哪些类型
  • 委托加工农产品的扣除率
  • 随同产品销售不单独计价包装物如何进行账务处理?
  • 在什么情况下会冻结微信零钱
  • 盈余公积和未分配利润合起来构成
  • sql如何实现循环
  • mysql报错1091
  • windows8禁用uac
  • win8.1的开始菜单在哪
  • winxp系统介绍
  • win7系统ie浏览器打不开
  • 安装阿里旺旺步骤
  • win8怎么切换界面
  • mongoose怎么用
  • nodejs使用视频教程
  • vs2010配置opengl
  • Extjs中DisplayField的日期或者数字格式化扩展
  • jquery 随机函数
  • 设计模式工厂模式使用场景
  • linux shell 循环语句
  • 安卓手机启用暴露通知
  • json数据格式的理解
  • 房产原值包括哪些内容
  • 江西电子税局
  • 冲红和红冲的区别
  • 沈阳车辆税务管理局电话
  • 稽查局是税务局的派出机构还是内设机构
  • 网上怎么开电子一票通
  • 福建农村社保一个月可以拿多少钱
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设