【发布时间】:2017-01-13 19:40:17
【问题描述】:
我正在开发一个具有多个状态(reducer)的应用程序。假设它们是消息、喜欢、cmets(它们都来自完全不同的实例,所以我不确定是否应该将它们组合成一个状态)。
每 30 秒我向服务器发出请求,我收到的响应说明我的应用程序的哪些部分已更新。例如。我收到了新消息或新评论。
我真的不知道如何处理这些响应。首先,我可以简单地让容器更新所有其他状态,但我认为这不是一个好主意,因为每个容器都应该有自己的状态。
其次,我可以创建一个中间件来捕获每个动作,找到具有所需信息的那个并触发另一个动作(例如新消息)。之后,消息的 reducer 将捕获此操作。但我再次不确定这是否是正确的方法,原因有两个:
- 是否可以从中间件拍摄动作(不是双向流)?
- 我该怎么做?
提前致谢。
UPD。我使用中间件做到了,但我仍然不确定这是否是正确的方法。在我的中间件中,我使用 store.getState()... 获取所需的数据,然后创建 store.dispatch(myAction)。没事吧?
【问题讨论】: