Как установить перехватчик для действия, запускаемого в редуксе - PullRequest
0 голосов
/ 02 марта 2019

У меня действительно большая форма, состоящая из около 50 компонентов, и я хочу вызвать редуктор, который установит флаг в значение true, когда в форму будут внесены какие-либо изменения, т. Е. Всякий раз, когда будет запущено действие.

ЧтоЯ хочу, чтобы флаг давал hasFormChanged, изначально ложный.Всякий раз, когда для изменения формы вызывается одно действие, оно проверяет этот флаг и устанавливает его в значение true, если оно уже не соответствует действительности.Что-то вроде перехватчика для действий.

Я не уверен, как мне это структурировать.Я действительно не хочу передавать редуктор установки флага всем моим компонентам.Было бы много повторяющегося кода

1 Ответ

0 голосов
/ 02 марта 2019

То, что вы ищете, это пользовательское промежуточное программное обеспечение для редуксов .
Это пример промежуточного программного обеспечения (по ссылке выше):

const logger = store => next => action => {
  console.group(action.type)
  console.info('dispatching', action)
  let result = next(action)
  console.log('next state', store.getState())
  console.groupEnd()
  return result
}

Вы можете позвонить store.dispatch() с действием для установки желаемого флага.

...