Он использует другую функцию, которая здесь не опубликована. Обратите внимание, что опубликованный код будет принимать состояние и действие и возвращать обновленное состояние. Это должно выглядеть знакомо. Часть, которую вы пропустили, вероятно, выглядит примерно так:

export default function createReducer(initialState, handlers) {
  return (state = initialState, action) => {
    if (has(handlers, action.type)) {
      return handlers[action.type](state, action);
    }
    return state;
  };
}

(Используя функцию has из lodash)

Эта функция выполняет работу, выполняемую другими операторами switch, вызывая определенный обработчик, если он соответствует заданному действию. Затем вы определяете свое начальное состояние и свои обработчики:

const handlers = {
  [ACTIONS.SOME_ACTION]: handlerFunction,
  [ACTIONS.SOME_OTHER_ACTION]: anotherHandlerFunction,
};
const initialState = {
  someProp: [],
  someOtherProp: null,
  yetAnotherProp: false,
};

Мне очень нравится этот шаблон, и я использую его постоянно. Вы избегаете подверженного ошибкам списка операторов switch, и я думаю, что его легче читать и рассуждать. Итак, в исходном сообщении:

[user.setUser]: (state, action) => {
  return {
    ...initialState,
    _status: status.FETCHED,
    userID: action.payload.result,
  }
},

user.setUser – это действие, определенное сразу под фрагментом, на который указывает ссылка (аналогично [ACTION.SOME_ACTION] выше). Для этого действия он определяет встроенную функцию-обработчик, где мой пример ссылается на handlerFunction. Вот и все, что было красиво завершено чем-то похожим на createReducer выше.

Надеюсь, это поможет! Это сильно отличается от шаблона оператора switch в официальной документации Redux, но мне он очень нравится.