Flux 在另一个动作中调用动作(在变化中)是一种好的做法吗

Flux 在另一个动作中调用动作(在变化中)是一种好的做法吗,flux,reactjs-flux,Flux,Reactjs Flux,我的行动如下: SomeActions.doAction1(){ //..dispatch event "started"... //...do some process.... FewActions.doAnotherAction(); //CAN WE DO THIS //...do something more.... //..dispatch event "completed".. } 虽然上面的工作没有问题,只是想知道,根据通量模式/标准,它是否有效,或

我的行动如下:

SomeActions.doAction1(){
   //..dispatch event "started"...
   //...do some process....
   FewActions.doAnotherAction(); //CAN WE DO THIS
   //...do something more....
   //..dispatch event "completed"..
}
虽然上面的工作没有问题,只是想知道,根据通量模式/标准,它是否有效,或者是否有更好的方法


另外,我想从商店里打电话是个坏主意。如果我错了,请纠正我。

是的,在另一个操作中调用一个操作是不好的做法。行动应该是原子的;存储区中的所有更改都应响应单个操作。他们应该描述现实世界中发生的一件事:用户点击按钮,服务器用数据响应,屏幕刷新,等等

大多数人在将动作视为命令性指令(先做A,然后做B)而不是描述发生了什么以及反应过程的起点时,会对动作感到困惑

这就是为什么我建议人们用过去时命名他们的动作类型:
按钮\u点击
。这提醒程序员动作的本质是外部驱动的、描述性的

行动就像一份报纸,被送到所有的商店,描述发生了什么


从商店调用操作几乎总是错误的。我只能想到一个例外:当存储通过启动异步进程响应第一个操作时。异步进程完成后,您需要启动第二个操作。对服务器的XHR调用就是这种情况。但更好的方法是将XHR处理代码放入Utils模块中。然后,存储可以通过调用Utils模块中的方法来响应第一个操作,然后Utils模块拥有在服务器响应返回时调用第二个操作的代码。

是的,在另一个操作中调用操作是不好的做法。行动应该是原子的;存储区中的所有更改都应响应单个操作。他们应该描述现实世界中发生的一件事:用户点击按钮,服务器用数据响应,屏幕刷新,等等

大多数人在将动作视为命令性指令(先做A,然后做B)而不是描述发生了什么以及反应过程的起点时,会对动作感到困惑

这就是为什么我建议人们用过去时命名他们的动作类型:
按钮\u点击
。这提醒程序员动作的本质是外部驱动的、描述性的

行动就像一份报纸,被送到所有的商店,描述发生了什么

从商店调用操作几乎总是错误的。我只能想到一个例外:当存储通过启动异步进程响应第一个操作时。异步进程完成后,您需要启动第二个操作。对服务器的XHR调用就是这种情况。但更好的方法是将XHR处理代码放入Utils模块中。然后,存储可以通过调用Utils模块中的方法来响应第一个操作,然后Utils模块拥有在服务器响应返回时调用第二个操作的代码