Я пытался добавить redux-persist в свой проект, но он продолжает отображать белую страницу.Если я удаляю то рендеринг успешно.Кроме того, если я добавлю подпорку загрузки в PersistGate (например, я могу видеть «загрузку ...» на странице.
Я также не вижу persist: root в локальном хранилище.
Я прочитал документацию, и мне показалось, что я настроил правильную реакцию на соединение. Нужно ли добавить что-то еще?
// index.js
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import './index.css';
import * as serviceWorker from './serviceWorker';
import {Provider} from 'react-redux';
import configureStore from './lib/configureStore';
import createHistory from 'history/createBrowserHistory';
import {PersistGate} from 'redux-persist/integration/react';
const history = createHistory();
const {store, persistor} = configureStore({history});
ReactDOM.render(
<PersistGate persistor={persistor}>
<Provider store={store}>
<App />
</Provider>
</PersistGate>,
document.getElementById('root')
);
serviceWorker.unregister();
// configureStore.js
import { routerMiddleware } from 'react-router-redux';
import { applyMiddleware, createStore } from 'redux';
import { composeWithDevTools } from 'redux-devtools-extension/developmentOnly';
import { persistReducer, persistStore } from 'redux-persist';
import storage from 'redux-persist/es/storage';
import { rootReducer } from '../redux';
import thunk from 'redux-thunk';
const config = {
key: 'root',
storage,
};
const reducer = persistReducer(config, rootReducer);
const configureStore = () => {
const middlewares = [routerMiddleware, thunk];
const store = createStore(
reducer,
composeWithDevTools(applyMiddleware(...middlewares))
);
const persistor = persistStore(store);
return { persistor, store };
};
export default configureStore;
// redux / index.js
import { combineReducers } from 'redux';
import { routerReducer } from 'react-router-redux';
import header from './header';
export const rootReducer = combineReducers({
header,
routing: routerReducer,
});