React Flux动作取决于另一个动作的结果

时间:2015-09-17 15:28:49

标签: reactjs action flux

我正在尝试处理一个取决于另一个动作结果的动作。

我有一个表单组件来创建/更新2个实体:

  1. 提交表格
  2. 首先调用APIAction.save并保存“parentEntityData”
  3. 再次调用APIAction.save并使用从服务器收到的“parentEntityData”id保存“childEntityData”。
  4. 为动作有效负载添加回调是否有意义?

    APIAction.save({
        entity: 'parentEntity',
        model: parentModel,
        next: (parentEntityId) => {
            APIAction.save({
                entity: 'childEntity',
                model: childModel.set('parentId', parentEntityId)
            })          
        }
    })
    

1 个答案:

答案 0 :(得分:0)

为了与服务器通信,有一个向服务器发送2条消息的flux-action可能没问题。取决于服务器端能够处理的内容。

服务器也可能响应2次,因此您的商店和组件应准备好正确处理服务器响应。

因此,如果您想阻止2服务器响应触发2个渲染周期,您可能必须在商店/组件中执行特殊操作。

在客户端,1个通量操作(提交操作)不应产生超过1个调度。