在存储中管理参数的Flux调用操作

Luc*_*eis 7 javascript flux reactjs

说我有一个动作someAction(params)是需要params其在商店管理paramsStore:

paramsStore.listen(function(params) { 
  someAction(params)
}) 
Run Code Online (Sandbox Code Playgroud)

似乎我不能在我的视图中调用它,因为显然这违反了Flux的处理方式(不应该在商店监听器中调用操作).

someAction在商店监听器中的原因是因为我希望每次paramsStore修改它时都要调用它.如何在不借助商店监听器内的"unpattern"调用操作的情况下实现这一目标?

Gob*_*ord 0

虽然我也是 Flux 的新手,但我可以提供一个建议。确定 Store A 所持有的操作结果所需的状态可以附加到 get 方法。该状态可以通过具有 getter 的视图来检索。当调用该操作时,可以将该状态作为参数发送。如果某些事情需要异步,现在可以根据状态在此处完成(ajax 调用或其他操作)。然后,可以使用此结果或 Promise 对象来触发传递给调度程序的操作。调度员将结果或承诺发送给商店。然后,商店更新其状态,并根据需要重复该过程(当触发初始操作时)。

我认为更详细地了解您到底需要什么实际上会有所帮助。我确实相信在商店内监听一个动作并触发另一个动作与变化并不相符。我确实认为可能有一种方法可以使用助焊剂来实现您想要的实际结果,但如果没有更多细节,这是我能想到的最好的方法。此外,实际上您可以实现任何您想要的东西。Flux 只是一个模型,并且通过扩展可以自我强加的约束来帮助构建结构。