Много раз во время проектов реагирования / редукса я работаю с API, который предоставляет для некоторых конечных точек «статические данные ответа».
В качестве примера мы можем рассмотреть список стран мира в соответствии с языковым стандартом пользователей. Они читаются после входа в систему и перечитываются после того, как пользователь меняет свой язык (не очень часто)
Мое текущее решение для этого см. В «псевдокоде» ниже
//this is a redux middleware that listens for login and app refreshed actions and fire alll needed calls
const sessionId = getSessionIdSelector(login);
if (action.type === LOGIN_ACTION || APP_REFRESHED_ACTION && sessionId) {
if(notAlreadyLoaded){
loadCountriesActionCreator(sessionId,language);
loadAnotherDataActionCreator(sessionId);
etc....
}
}
Я использую redux-persist на вершине redux, поэтому статические редукторы данных сохраняются до тех пор, пока кэш не очищен
Это работает, как ожидалось, и решает мою проблему, однако в действиях / редукторах / сагах много повторяющегося кода
Мне интересно, есть ли другое, может быть, более элегантное решение / библиотека, которая решает эту проблему