【基础版】React缓存路由

前言

项目背景

  • React
  • umi
  • react-router5

需求

用户在某一页面操作后点击跳转到其详情页,返回到列表页还是之前操作过的页面,即把页面缓存下来(基础版先处理路由缓存,tab页展示先不处理)

实践

  • 在布局页面对页面进行缓存即可实现

  • 采用Map数据结构对页面进行缓存,性能方面更优,读取删除也方便~

    <Fragment> { Array.from(_routerMap.keys()).map(key=>{ const children = _routerMap.get(key) if(key === location.pathname){ return
    {children}
    } return
    {children}
    }) } </Fragment>

拓展

tab页展示的话,目前没有找到对应读取路由信息(包含路由所有信息)的api,需要自己实现--对路由进行过滤即可~

最后

根据以上的关键代码就可实现路由缓存啦~

相关推荐
小华同学ai几秒前
炸裂!Github 6000+ star 开源免费易用,支持1000+格式转换,值得收藏!
前端·后端·github
几米哥1 分钟前
Vercel v0.app:重新定义AI驱动的全栈开发新纪元
前端
冰糖雪梨dd3 分钟前
防御XSS与CSRF攻击
前端·安全
excel20 分钟前
JavaScript 并发编程实战:用 Atomics 与 SharedArrayBuffer 玩转多线程与视频渲染
前端
不在了情绪44 分钟前
CSS 基础语法 + 弹性盒子
前端·css
水煮白菜王1 小时前
从零搭建 React 工程化项目
前端·javascript·react.js
会飞的鱼先生1 小时前
react的基本使用
前端·react.js·前端框架
chenglin0161 小时前
C#_接口设计:角色与契约的分离
java·前端·c#
chenglin0161 小时前
ES_多表关联
java·前端·elasticsearch
明月与玄武4 小时前
Vue 3 高性能实践 全面提速剖析!
前端·javascript·vue.js