0

假设我们保存信息并从数据库中检索它(因为它可能会被多个用户更改),并更新每个保存和检索操作的状态。state 有什么用,什么时候用呢?示例:当应用程序被多个用户使用时,更新数据库中的项目数量。

请解释 NGXS 中状态的确切用途

4

1 回答 1

2

tldr; 当您从数据库(或更有可能是 REST api)中检索信息时,您必须对其进行一些管理,以便您的组件可以向用户显示数据的“视图”。我特别喜欢 CQRS 模式和 NGXS 的一点是状态管理方式的统一性以及影响数据的事件与使用数据的位置之间的解耦水平。

这是一个示例 - 假设您有 10 个主要实体供您的应用操作,它们来自一个或多个 REST api,您的用户已通过身份验证/授权访问。用户注销。如果您在 10 个单独的服务中管理您的状态,则必须在每个服务中处理注销。在 NGXS 中,您发送一个注销操作,并让您的所有状态容器侦听该事件并采取相应的操作。

用 Observables 表示状态意味着您可以在一个地方(一个操作)更改您的数据,现在正确的事情将在组件树中发生。假设您正在显示项目列表、列表中的选定项目和选定的子项目。如果一个动作更新了表示列表的状态,所有观察它的组件都会自动更新它们自己。

于 2018-07-23T12:12:34.957 回答