【发布时间】:2015-01-12 03:17:48
【问题描述】:
我有一个场景,我觉得我需要调度一个动作来响应另一个动作,但我不知道最好的解决方法。
为了响应 HTTP 响应而调度操作,例如:
type: 'auth'
data: { username: 'tom' }
由于响应成功,我想发送一个动作将用户发送到主页:
type: 'navigate'
date: { where: 'home' }
这对我来说似乎是一个明智的流程:这件事发生了,所以现在我希望这件事发生。麻烦的是,Flux Dispatcher 不允许这样做,因为我们仍处于调度周期中。我明白为什么在分派时分派是个坏主意。
有些人已经通过多个调度程序解决了这个问题,而 Flux 作者似乎确信您只需要一个并且您需要重新考虑您的商店。
我不知道如何在不混淆意图的情况下重组我的商店以促进这一点。我的UserStore 知道auth 动作,我的RouteStore 知道navigate 动作。任何关于如何改变商店以促进这一点的建议将不胜感激。
我觉得setImmediate 会起作用,但它似乎有点脏。我还认为排队操作的调度程序可能会有所帮助,但我能从骨子里感觉到这可能会导致严重的问题。
最好的办法是什么?
【问题讨论】:
标签: reactjs reactjs-flux