监听 dispatch 的响应

Listening for the response of dispatch

在我当前的项目中,一些组件是有状态的。一些状态属性取决于调度方法的结果。

this.props.dispatch({
  type: Constants.CONTRACT_DELETE_START,
  payload: {
    contract: contract
  }
});

基本上我需要从中得到回应,像这样:

this.props.dispatch({
  type: Constants.CONTRACT_DELETE_START,
  payload: {
    contract: contract
  }
})
.catch(err => {
   this.setState({
     foo: "bar"
   });
})

是否可以在不将 foo: bar 逻辑带到 Redux 存储的情况下做到这一点?

Ps。我正在使用 Redux Saga 进行操作。

我不确定承诺的事情(如何解决或拒绝 in saga)但你也可以这样做:

this.props.dispatch({
  type: Constants.CONTRACT_DELETE_START,
  payload: {
    contract: contract,
    callback: () => {
      // Do your stuff here
    }
  }
})

只需在此处传递一个回调,然后根据您的逻辑在您的 saga 中调用它。