import React, { Component } from 'react'; import { Provider } from 'react-redux'; import { Store } from 'redux'; import { Persistor } from 'redux-persist'; import { PersistGate } from 'redux-persist/integration/react'; import configureStore from './store/configureStore'; import { CONNECT_REQUEST } from './constants/socketActionTypes'; import App from './containers/App'; import { StoreState } from './reducers'; import { StoreAction } from './actions'; class Root extends Component { store?: Store; persistor?: Persistor; UNSAFE_componentWillMount() { const { store, persistor } = configureStore( (store: Store) => { if (store.getState().connection.type !== 'disabled') { store.dispatch({ type: CONNECT_REQUEST, }); } } ); this.store = store; this.persistor = persistor; } render() { if (!this.store) return null; return ( ); } } export default Root;