Files
weave-scope/client/app/scripts/stores/configureStore.dev.js
2017-11-14 13:22:00 +00:00

26 lines
759 B
JavaScript

import { createStore, applyMiddleware, compose } from 'redux';
import thunkMiddleware from 'redux-thunk';
import { initialState, rootReducer } from '../reducers/root';
export default function configureStore() {
/* eslint-disable no-underscore-dangle */
const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
/* eslint-enable */
const store = createStore(
rootReducer,
initialState,
composeEnhancers(applyMiddleware(thunkMiddleware)),
);
if (module.hot) {
// Enable Webpack hot module replacement for reducers
module.hot.accept('../reducers/root', () => {
const nextRootReducer = require('../reducers/root').default;
store.replaceReducer(nextRootReducer);
});
}
return store;
}