2016-07-28 98 views
0

我已经从组件调用动作创建器来创建/编辑资源,该资源又将API请求发送到服务器。我应该如何处理服务器停机或返回错误的情况?我希望任何相关组件都能得到成功/失败的通知。如何处理流量中的服务器/请求错误?

我现在的想法是:

  1. 调度COMMENT_FAILED,COM​​MENT_SUCCESS行动的评论商店,然后通知组件不知何故?

  2. 在启动组件中使用承诺来捕获动作调用中的错误并对其进行适当的响应/呈现。

哪个更好?为什么?

以前在React+Flux: Notify View/Component that action has failed?中已经提到过这个问题,但唯一建议的解决方案是在2中使用Promises。我当然可以这样做,但它看起来像...不像Flux。

+0

您使用的是什么助焊剂实现? – azium

+0

我正在使用Facebook流量 –

回答

1

我通常会做的是创建一个特定于我的容器/组件的错误缩减器。例如,如果用户提交了登录信息,我会按如下方式将错误发送给我的登录缩减程序。

export default function dispatchError() { 
     return function(dispatch) { 
      dispatch({ 
       type: 'LOGIN_ERROR', 
       payload: 'You entered an incorrect password' 
      }); 
     } 
} 

现在在你的实例中,这将非常相似。任何时候向减速器发送失败的请求。

+0

是的,这与我的想法非常相似。如何处理在同一页面上有多个相同组件的情况?您只需要启动该操作的组件来响应成功/错误分派。在这种情况下,承诺可能更好? –

+0

我不认为Facebook的流量有减少,但多个商店。应该尽可能相似 – azium

相关问题