5

我正在学习 Akita 向 Angular 应用程序添加状态管理。在查看Akita 文档中的架构图和Akita GitHub repo 上的示例时,我看到查询是直接在组件中访问的。看到这一点我很惊讶,因为我预计应用程序的状态管理部分将隐藏在服务后面,并从消费者(即组件)中抽象出来。与 Query 不同,Store 隐藏在 Service 后面,不能在组件中直接访问。在我看来,如果 Query 隐藏在 Service 后面,就像 Store 隐藏在 Service 后面一样,那么消费者只需要为每个数据源导入一个东西,即 Service。

所以我的问题是为什么秋田要我们直接在组件中访问查询而不是商店?将查询隐藏在服务后面是否有缺点?

4

1 回答 1

7

我在Akita Gitter 频道问了同样的问题, Akita的作者 Netanel Basal 回答了我的问题如下:

做你想做的事没有缺点。我已经看到有人这样工作,这是完全正确的。Store 是数据层,组件不应该知道它。它只应该知道如何获取数据。这就是我们在组件中注入 Query 的原因。

于 2019-10-15T15:02:00.377 回答