Skip to content

Instantly share code, notes, and snippets.

@wildfrontend
Last active April 9, 2020 02:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save wildfrontend/d5ae7017b6a1da185fda0ebbbcbd892f to your computer and use it in GitHub Desktop.
Save wildfrontend/d5ae7017b6a1da185fda0ebbbcbd892f to your computer and use it in GitHub Desktop.
redux config
import React from 'react'
import ReactDOM from 'react-dom'
import { StoreContext } from 'redux-react-hook'
import App from './App'
import store from './store/configureStore'
import prestate from './store/prestate'
const app = (state = {}) => {
ReactDOM.render(
<StoreContext.Provider value={store(prestate(state))}>
<App />
</StoreContext.Provider>,
document.getElementById('root'),
)
}
if (process.env.NODE_ENV !== 'production' && module.hot) {
module.hot.accept('./App', app)
}
export { app }
import { applyMiddleware, createStore } from 'redux'
import { composeWithDevTools } from 'redux-devtools-extension'
import rootReducer from './reducers'
export default function configureStore(preloadedState) {
const middlewares = []
const middlewareEnhancer = applyMiddleware(...middlewares)
const enhancers = [middlewareEnhancer]
const composedEnhancers = composeWithDevTools(...enhancers)
const store = createStore(rootReducer, preloadedState, composedEnhancers)
if (process.env.NODE_ENV !== 'production' && module.hot) {
module.hot.accept('./reducers', () => store.replaceReducer(rootReducer))
}
return store
}

installing

package

npm install --save redux  redux-react-hook

dev-tool

npm install --save-dev redux-devtools-extension
import modelPlayer from 'model/player'
const prestate = state => {
return {
...state,
player:modelPlayer(state.player)
}
}
export default prestate
import { combineReducers } from 'redux'
import { player } from 'reducers'
const rootReducer = combineReducers({
player
})
export default rootReducer
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment