Redux 只维护共享数据

Redux for maintaining only shared data

在我们的 Angular 应用程序中,我们计划使用 Redux,但决定使用它来仅管理至少由两个组件共享的数据。只被一个组件使用的数据会直接拉取,不使用 Redux。例如假设一个组件必须显示一个值列表,并且这些值不与任何其他组件共享,那么我们将使用服务获取该列表。但是在获取此数据时,它可能会影响商店中的其他一些状态,例如它可能会分派一些操作,例如 NETWORK_REQUEST_SENT、NETWORK_REQUEST_COMPLETED,以便 spinner/overlay 组件可以更改其显示。

现在的问题是代码的哪一部分应该负责调度这些操作。

如果您使用 HttpClientModule,您可以注册拦截器,如 https://medium.com/@ryanchenkie_40935/angular-authentication-using-the-http-client-and-http-interceptors-2f9d1540eb8

中所述

您可以在 NETWORK_REQUEST_SENT 调用时调用它,在 finally 中调用 NETWORK_REQUEST_COMPLETED 以在请求完成时调用操作。 那么就不需要再有一个observable了。