Как сохранить мой редуктор чистым при использовании промежуточного ПО Redux Promise?
Я использую промежуточное программное обеспечение Redux Promise, и создатель моего действия возвращает действие с обещанием.
Теперь в редукторе я получаю данные разрешенного обещания и мне нужно "предоставить" новое состояние. Я также должен сделать что-то не "чистое" с этими данными, например, сохранить их в локальном хранилище.
Как мне подойти к этой ситуации и при этом сохранить чистоту редуктора? Эти данные получены в промежуточном программном обеспечении, и в первый раз я получаю их в редукторе.
Я знаю, что могу выполнить обещание в моем создателе действия и получить доступ к данным до отправки действия, но есть ли другой лучший способ?
1 ответ
Вы можете создать свой собственный middleware
!
Вы можете назвать это localStorage-middleware
например, и вы можете отправить действие, прежде чем предоставлять свои данные редуктору. Ваше промежуточное программное обеспечение будет слушать это действие, как dispatch(saveDataToLocalStorage(dataToSave))