Reactjs 如何使用Alt(通量)从多个组件同时激发动作

Reactjs 如何使用Alt(通量)从多个组件同时激发动作,reactjs,design-patterns,flux,reactjs-flux,Reactjs,Design Patterns,Flux,Reactjs Flux,我正在使用Alt库实现Flux体系结构。我有一个组件,它显示有关电影的信息。现在我陷入了这样一种情况:我需要在我的主页下呈现这样一组组件。问题是这些组件中的每一个都在componentDidMount内部调用ajax请求。因此,当我有超过一个时,我得到: Uncaught Error: Invariant Violation: Dispatch.dispatch(...): Cannot dispatch in the middle of a dispatch. 我写了一篇更长的文章,这是一个

我正在使用Alt库实现Flux体系结构。我有一个组件,它显示有关电影的信息。现在我陷入了这样一种情况:我需要在我的主页下呈现这样一组组件。问题是这些组件中的每一个都在
componentDidMount
内部调用
ajax请求。因此,当我有超过一个时,我得到:

Uncaught Error: Invariant Violation: Dispatch.dispatch(...): Cannot dispatch in the middle of a dispatch.
我写了一篇更长的文章,这是一个更简洁的版本。我根本无法理解问题的本质

编辑:使用图像进行澄清。基本上,我得到了第一个组件的海报,第二个组件抛出错误并停止工作:


经过几天的研究和帮助,我的问题解决了

答案很简单:你不能。这不仅被认为是不好的做法,而且被认为是Flux反模式,因此受到标准Facebook dispatcher的限制(这是Alt使用的)。正确的方法是从最上面的组件处理操作存储。您也可以使用自定义调度程序,但我想它没有任何理由受到限制

在我的例子中,这是主页组件,我所做的是启动单个动作,它获得所有电影海报,然后用道具将信息传递下去

据我所知,最佳做法是在最顶部有一个容器组件,它只负责操作存储。然后在容器内部-一个视图组件(一个或多个),负责呈现UI和数据。我觉得这篇文章内容丰富