Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | import { applyMiddleware, compose, createStore } from 'redux'
import thunkMiddleware from 'redux-thunk'
import { persistStore, persistReducer } from 'redux-persist'
import storage from 'redux-persist/lib/storage'
import monitorReducersEnhancer from 'enhancers/monitorReducer'
import loggerMiddleware from 'middleware/logger'
import rootReducer from '.'
const persistConfig = {
key: 'settings',
storage,
}
const persistedReducer = persistReducer(persistConfig, rootReducer)
export default function configureStore(preloadedState) {
const middlewares = [
process.env.NODE_ENV === 'development' && loggerMiddleware,
thunkMiddleware,
].filter(Boolean)
const middlewareEnhancer = applyMiddleware(...middlewares)
const addReduxDevtoolsInDevMode =
process.env.NODE_ENV === 'development' &&
window.__REDUX_DEVTOOLS_EXTENSION__ &&
window.__REDUX_DEVTOOLS_EXTENSION__()
const enhancers = [middlewareEnhancer, monitorReducersEnhancer, addReduxDevtoolsInDevMode].filter(
Boolean,
)
const composedEnhancers = compose(...enhancers)
let store = createStore(persistedReducer, preloadedState, composedEnhancers)
let persistor = persistStore(store)
return { store, persistor }
}
|