当需要恢复应用程序的状态时,使用哪种模式?



我有一些从服务器返回数据的观察器方法。此结果将应用于筛选器(带有数据输入的 HTML 表单(。这些筛选器彼此相关。这意味着当我选择一个过滤器时,它会加载另一个过滤器。

简要说明如下:

Load data from server -> 
Assign response to variable and assign to filter -> 
Choose value from filter -> 
Fill others filters -> 
Load content on the page based selected filter

用户可以离开此页面并在之后返回。

如何提供带有所选过滤器和内容的页面的用户声明,避免重复服务器请求?

您的组件应接受能够重新创建状态的@Input对象。应更新此对象并将其存储在类似服务的类中,以跨页面进出移动保留其生存期。您尝试解决的概念与ngrx store正在解决的概念相似。

存储机制并不难,在这个物体上有什么灵魂是硬的。如果您不想依赖缓存数据,则应存储您描述的流(即过滤器依赖项(,以便使用新数据重新初始化组件。如果您不关心一些同时更新的数据,则需要存储数据(以及用于视图一致性的过滤器值(,但不会执行 API 调用。在我看来,所有的魔法都应该被推入Init'。

编辑

如评论中所述,请考虑将GoF的纪念品设计模式作为您的设计的参考

最新更新