在 react redux 中全局状态改变后分派新动作

Gre*_*gor 3 ecmascript-6 reactjs redux

假设我有一个表单,用户将在其中单击按钮组合。

每个按钮触发一个类型为 T 的操作,reducer R 然后更新它的状态并且新的组合被呈现在网站上。

现在是棘手的部分:我在 reducer 中实现了我的业务逻辑,它应用了即将呈现的新状态。我现在需要的是当该状态接受条件时,我想发送新操作(api 请求)。

解决此类问题的正确方法是什么?

将标志设置为状态,然后在组件中调用新操作?不知何故在reducer中调度一个函数?

……?

Ada*_*nis 7

Redux Thunk 允许你在你的动作创建者中分派多个动作和异步动作。对于您的场景,您可以执行以下操作:

function myAction() {
  return (dispatch, getState) => {
    ...
    dispatch(firstAction);

    const state = getState();

    // Check your state conditions from first action here.
    dispatch(secondAction);
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)