Ожидается, что будет возвращено значение в конце функции стрелки - Immer Redux Reducer - PullRequest
0 голосов
/ 04 мая 2020

Я использую Immer с редуктором, и я получил это предупреждение

Expected to return a value at the end of the arrow function 

Как это исправить?

мой редуктор выглядит так:

export const optionReducer = (
  state = initialState,
  action: optionActionTypes
) =>
  produce(state, draft => {
    switch (action.type) {
      case OPTION_GETALL_SUCCESS: {
        draft.data = action.payload;
        break;
      }
      default:
        return draft;
    }
  });

1 Ответ

1 голос
/ 04 мая 2020

В одной из ветвей switch вы выполняете break, а в другой - return. Вы должны либо вернуться в оба, либо разбить оба и вернуться в конце функции

export const optionReducer = (
  state = initialState,
  action: optionActionTypes
) =>
  produce(state, draft => {
    switch (action.type) {
      case OPTION_GETALL_SUCCESS: {
        draft.data = action.payload;
        return draft;
      }
      default:
        return draft;
    }
  });
...