该项目是购物中心的背景管理系统。它用于建筑和状态管理。它希望达到类似vue的效果。
具体的表现是:
摘要是只有在指定的页面跳跃时才能缓存页面,并且当返回缓存页面时,它可以控制其是否刷新。
该项目使用集中配置路由。我增加了元属性。它的存在是,这是一项需要受到库存影响的路由。
在根组件中,整个应用程序都包裹在需要使用软件包的页面中。该文档的部分写在中间,如果是UMI,则可以用布局写入。
通过Tree的平坦计算,获得具有Meta的所有路线。保持级别:通过判断,如果当前页面需要发出哔哔声,则需要使用该软件包。
请注意,如果AliveScope包含Keepalive,则必须带上它。
在最后一步之后,尽管该页面被缓存,但它却缓存了任何页面。我们仅在跳跃指定页面时才需要缓存。
我的方法是
反应激活提供手动控制缓存,该方法用于清除所有缓存中的按键
监视聆听,使用状态管理(DVA I使用)记录即将到来的页面(下一页)
我会去页面上即将去的页面
根组件从DVA读取即将到来的页面topath,然后添加一个。如果您要去的页面不是您自己的元路线的当前路线。
现在有一个问题:从列表A跳跃的详细信息,然后跳到列表B,然后跳到列表A,A不会刷新:
=> => =>目前不要刷新或空白。
因为当我们出来时(跳跃列表B),我们没有清除列表A的缓存。
因此,请检查当前页面是否是需要keetalive页面的topath页面
根组件:
根组件只需要引入此钩子:
现在,只剩下最后一个问题,实际上是keepalive的页面,回复传递参数的问题
主意:
原始:https://juejin.cn/post/7098602213102059527