Redux 处理异步(thunk';d)操作中的副作用

Redux 处理异步(thunk';d)操作中的副作用,redux,Redux,我有一个异步actionCreator来处理我的应用程序的身份验证流: function createAuthenticationResponse(err, grant) { return { type: AUTHENTICATION_RESPONSE, payload: err || grant, error: Boolean(err) } } function authenticate() { // return a thunk. return d

我有一个异步actionCreator来处理我的应用程序的身份验证流:

function createAuthenticationResponse(err, grant) {
  return {
    type: AUTHENTICATION_RESPONSE,
    payload: err || grant,
    error: Boolean(err)
  }
}

function authenticate() {

  // return a thunk.
  return dispatch => {

    // Notify the system that we are authenticating.
    dispatch({ type: AUTHENTICATE });

    // Trigger the auth flow.
    myAuthModule.authorize((err, grant) => {

      // Trigger a state-change on the outcome.
      dispatch(createAuthenticationResponse(err, grant));

      // Q: How do I handle this side-effect?
      if (!err) {
        dispatch(extractUserInfo(grant));
      }
    });
  };
}
My actionCreator包含从授权中提取用户信息的业务逻辑(如果用户已成功通过身份验证);这个逻辑应该存在于我的行动创造者中吗?如果没有,我应该把它放在哪里,在我的减速器内


在其他体系结构中,我会绑定一个命令来触发
身份验证\u响应
;但这感觉不像是一项中间件工作?

我认为你的建议完全合理。
您可以使用Redux Thunk来控制流量和产生副作用。

你不应该把副作用加到减量器里。

我认为你的建议是完全合理的。
您可以使用Redux Thunk来控制流量和产生副作用。

你不应该把副作用加到减量器里。

我认为你的建议是完全合理的。
您可以使用Redux Thunk来控制流量和产生副作用。

你不应该把副作用加到减量器里。

我认为你的建议是完全合理的。
您可以使用Redux Thunk来控制流量和产生副作用。
你不应该把副作用放进减速机里