回复错误触发操作

时间:2015-06-25 01:55:34

标签: javascript reactjs flux refluxjs

这可能是一个大错误,或者我无法理解为商店触发的不同操作设置不同视图(React)处理程序的有用性,如果为每个操作调用所有处理程序。

这就是我的意思:https://jsfiddle.net/69z2wepo/10946/

预期产出:

action 1 handler triggered from action 1
-----------------
action 2 handler triggered from action 2

我真正得到的是:

action 1 handler triggered from action 1
action 2 handler triggered from action 1
-----------------
action 1 handler triggered from action 2
action 2 handler triggered from action 2

通过查看此输出,我可以说这是错误的。但要澄清:操作1应该只触发操作1的处理程序,操作2应该只触发操作2的处理程序。

我做错了吗?

请帮忙!

P.S:我也试过用this.listenTo手动使用ComponentDidMount;同样的行为。

1 个答案:

答案 0 :(得分:2)

从概念上讲,我认为你有点误解了Flux。该组件不会侦听操作/事件,它会侦听商店中数据的更改。因此,您所看到的内容是正确的,因为在这两种情况下,您都使用trigger来表示商店已更改。

该组件仅关注触发操作,而不是消耗它们。因此,将组件中的onAction1onAction2标记为"处理程序"并非如此。