Initial commit
This commit is contained in:
commit
56d40196d6
15 changed files with 490 additions and 0 deletions
35
src/index.jsx
Normal file
35
src/index.jsx
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
`use strict`
|
||||
import { render } from 'inferno'
|
||||
import { Provider } from 'inferno-redux';
|
||||
import { applyMiddleware, createStore, combineReducers } from 'redux';
|
||||
|
||||
import { themeReducer } from './reducers';
|
||||
|
||||
import Main from './main.jsx'
|
||||
|
||||
const logger = process.env.DEBUG ? store => next => action => {
|
||||
console.group(action.type)
|
||||
console.info('dispatching', action)
|
||||
let result = next(action)
|
||||
console.log('next state', store.getState())
|
||||
console.groupEnd()
|
||||
return result
|
||||
} : null
|
||||
|
||||
const persistedState = localStorage.getItem('reduxState')
|
||||
const initState = persistedState ? JSON.parse(persistedState) : {}
|
||||
|
||||
const reducers = combineReducers(
|
||||
{theme: themeReducer})
|
||||
const store = process.env.DEBUG ?
|
||||
createStore(reducers, initState, applyMiddleware(logger)) : createStore(reducers, initState)
|
||||
|
||||
store.subscribe(() => {
|
||||
localStorage.setItem('reduxState', JSON.stringify(store.getState()))
|
||||
})
|
||||
|
||||
render(
|
||||
<Provider store={store}>
|
||||
<Main />
|
||||
</Provider>,
|
||||
document.getElementById("root"))
|
||||
Loading…
Add table
Add a link
Reference in a new issue