1 Star 0 Fork 1

不若吃茶去 / react-keepAlive

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

关于本项目

基于 react-routerV6 原生实现 KeepAlive 无需任何其他库或者其他插件

原理:

####核心API
1:react-routerV6 的 useRoutes。 2:React 的 createPortal。 利用 useRoutes 动态匹配路由 存储每次匹配到的信息
。 利用 createPortal 将非当前渲染的路由 移动到一个 document.createElement('div') 当中

核心代码:

/*路由 渲染layout组件  在layout里面利用 useRoutes 匹配  路由信息跟vnode
然后传递给 /components/KeepAlive 组件
KeepAlive 自己缓存一个Map 对象 map.set('路由信息的pathname',vnode)
然后匹配当前路由的 pathname 渲染对应的 vnode 
没匹配的就利用createPortal渲染到DIV里面

预览

空文件

简介

暂无描述 展开 收起
JavaScript 等 5 种语言
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
JavaScript
1
https://gitee.com/qianyeyixi-qianyeyixi/react-keepAlive.git
git@gitee.com:qianyeyixi-qianyeyixi/react-keepAlive.git
qianyeyixi-qianyeyixi
react-keepAlive
react-keepAlive
main

搜索帮助