Какой смысл в параметре отправки в функции? - PullRequest
0 голосов
/ 14 мая 2018

Новый для реакции и редукции thunk, просто интересно, что является причиной наличия параметра отправки

return (dispatch: Dispatch, getState: () => ReduxState):

ВisTest () метод ???Насколько я понимаю, диспетчеризация используется только для отправки действия для обновления состояния, но мой метод, приведенный ниже, не требует и не отправляет действие.

Моя сетка не обновляется должным образом, если я удаляю параметр отправкииз метода.

Container file:
getTest: ():any => {
      return {
        disabledFields: dispatch(isTest("Abc"))
          ? [grid.title]
          : [grid.name]
      };
    }

Action file:
export const isTest = (
  str: String
) => {
  return (
    dispatch: Dispatch<ReduxState>,
    getState: () => ReduxState
  ): boolean => {
    return getState().id === 5;
  };
};

1 Ответ

0 голосов
/ 14 мая 2018

Из документации ...

Промежуточное ПО Redux Thunk позволяет писать создатели действий, которые возвращают функцию вместо действия.Thunk может использоваться для задержки отправки действия или для отправки только при соблюдении определенного условия.Внутренняя функция получает методы хранения dispatch и getState в качестве параметров.

Таким образом, суть параметров диспетчеризации заключается в том, что вы можете запустить функцию или другое действие, прежде чем вернуть объект в редуктор.Примером этого может быть то, что если вы нажмете на API действие, вы можете затем отправить другую функцию, которая может проанализировать ответ, а затем отправить действие, которое вернет проанализированный ответ вашим редукторам.Или он может не отправлять последнее действие, потому что ответ API был плохим.

...