tabs多页缓存组件
1. 示例
2. 已解决问题
1. 例如路由: /user/:id, 那访问: /user/123, /user/234, /user/4545, 是希望缓存这3个页面的
2. 怎么刷新 / 删除 tabs ?
3. 如何限制tabs打开的个数 ?
4. 如果支持一个路由或页面打开多次, namespace该如何注册和切换 ?
5. 如何获取tabs页面标题
3. 使用
import {
getRealNS,
getTitle,
getCount,
connect,
unload,
refresh,
RouteComponent,
dynamicNS
} from 'tf-tabs-cache'
// 如果是/user/:id形式的路由, 可能会用到该方法, 获取当前真实的namespace
getRealNS(ns)
// 获取url地址标题
getTitle(url)
// 当前已经打开了多少个tabs页面
getCount()
// 使用方式和react-redux的connect方法一致, 如果是/user/:id形式的路由, 请使用该方法
connect(xx)(xx)
// 卸载url页面
unload(url)
// 刷新当前页面
refresh()
// 中间件: 用于/user/:id形式路由时, namespace自动切换
dynamicNS
// RouteComponent组件, 使用参照根目录下的router.js
RouteComponent
4. 依赖
依赖组件: react-router-cache-route
5. 更新记录
0.1.5-beta:
实现: https://umijs.org/zh/guide/runtime-config.html
目前实现了: setRuntime, patchRoutes, render, onRouteChange 运行时方法