【基础版】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,需要自己实现--对路由进行过滤即可~

最后

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

相关推荐
你听得到114 分钟前
Flutter - 手搓一个日历组件,集成单日选择、日期范围选择、国际化、农历和节气显示
前端·flutter·架构
风清云淡_A11 分钟前
【REACT18.x】CRA+TS+ANTD5.X封装自定义的hooks复用业务功能
前端·react.js
@大迁世界13 分钟前
第7章 React性能优化核心
前端·javascript·react.js·性能优化·前端框架
前端Hardy28 分钟前
HTML&CSS:惊艳!科技感爆棚的登录页面代码解析
前端·javascript·html
我是哈哈hh40 分钟前
【AJAX项目】黑马头条——数据管理平台
前端·javascript·ajax·前端框架·axios·proxy模式
高端章鱼哥43 分钟前
分享一个 MySQL binlog 分析小工具
前端
Ronin-Lotus44 分钟前
上位机知识篇---AJAX
前端·javascript·ajax
Rika1 小时前
手写mini-vue之后,我写了一份面试通关手册
前端·vue.js
我想说一句1 小时前
使用React开发拉布布旅游智能聊天机器人的实践
前端·前端框架
wwy_frontend1 小时前
积累:04-VUE2
前端