В моей функции onBeforeLift я хочу выполнить два асинхронных редукционных действия, где второе зависит от первого.
Это мой текущий код:
import React from "react";
import { BrowserRouter } from "react-router-dom";
import { render } from "react-dom";
import { Provider } from "react-redux";
import { PersistGate } from "redux-persist/es/integration/react";
import App from "./containers/App";
import configureStore from "./redux/store";
import { LanguageActions, VersionActions } from "./redux/actions";
// Extract persistor and store configuration
const { persistor, store } = configureStore();
// Search for the div element with the id 'root' in the index.html file
const mountNode = document.querySelector("#root");
const renderApp = () => {
// Execute the following redux actions before gate lifts and app is being displayed
const onBeforeLift = () => {
store.dispatch(VersionActions.requestVersion());
store.dispatch(
LanguageActions.fetchTranslatedLabels(new Date().getFullYear())
);
};
// PersistGate delays rendering of app's UI until
// persisted stated has been retrieved and saved to redux
render(
<Provider store={store}>
<PersistGate persistor={persistor} onBeforeLift={onBeforeLift}>
<BrowserRouter>
<App />
</BrowserRouter>
</PersistGate>
</Provider>,
mountNode
);
};
renderApp();
В соответствии с проблемой GitHub это должно быть возможно, но я не могу найти способ заставить его работатьмое дело. Цель состоит в том, чтобы сохранить значение ответа первого действия и использовать его для выполнения второго вместо new Date(().getFullYear()