【问题标题】:Does redux middleware need to "return" next or is it implicit?redux 中间件接下来需要“返回”还是隐含的?
【发布时间】:2020-12-04 19:02:54
【问题描述】:

我有一些代码,看起来像这样

export default function fooMiddleware({ dispatch, getState }) {
  return next => action => {
    if (type === TYPES.REGISTER_FOO_INITIALIZED) {
      next(action); // return next?
    }

    if (someOtherCondition) {
        dispatch(ACTIONS.loadDates());
      }
    }

    next(action);
  };
}

我是否需要明确地拥有next 函数(即第一个函数)return 或者在这种情况下这无关紧要。

【问题讨论】:

    标签: redux middleware


    【解决方案1】:

    不,这不是隐含的。这只是一个正常的功能。如果你实际上没有return 任何东西,它与return undefined 相同。

    一个好的 Redux 中间件应该总是返回 next(action) 的结果,除非它特别试图覆盖返回值并替换其他东西(或者是拦截操作并且根本不传递它)。否则, 试图返回某些内容的后续中间件将永远不会按预期返回该值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-06
      • 2019-09-09
      • 1970-01-01
      • 2012-06-06
      • 2019-12-29
      • 2011-09-26
      相关资源
      最近更新 更多