代码拉取完成,页面将自动刷新
基于 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里面
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。