Angular的NgRx中的多个实体而不是实体状态?



在我需要显示的组件上使用 Angular 9 和 NGRX:

  • 最近的帖子列表;
  • 热门帖子列表;
  • 标签列表
  • 保留搜索查询字符串

我创建了一个发布状态:

export interface PostState extends EntityState<Post> { }

问题

  1. 如果组件需要最近的帖子、热门帖子、标签和查询字符串,我应该有 4 种状态吗?

  2. 如果不同之处在于它们从数据库加载的方式(可能使用 Effects(,我是否需要 2 个发布状态(最近和顶部(?

  3. 如何将所有状态包装在组件的状态中?

  1. 只有一个大州。你正在使用选择器来获取该状态的一部分。因此有 4 个选择器(如果您不需要分隔帖子,则为 3 个(
  2. 我会在这里使用效果,因为任何服务器请求都被视为副作用。
  3. 为了防止你的组件成为万事通,我建议使用一个名为 Facade 的抽象层。这样,您的组件就可以通过可观察量从外观获取数据,并通过外观 API 调度操作。在立面内部,您将拥有所需的所有状态切片(选择器(。

相关内容

  • 没有找到相关文章

最新更新