У меня есть простая SPA - две кнопки и текст. Есть хранилище, которое почему-то не меняет свое состояние. Я не понимаю почему.
Вот код - всё тривиально. Можно запустить:
here code
import React from 'react';
import { render } from 'react-dom';
import { createStore } from 'redux'
// REDUX reducer
const counter = (state = 0, action) => {
switch (action.type) {
case 'INCREMENT':
return state + 1
case 'DECREMENT':
return state - 1
default:
return state
}
}
// Create REDUX store.
// In arguments we need to give reducer
const store = createStore(counter)
// TODO: use this component to view text on a screen
const Counter = ({
value,
onInc,
onDec
}) => (
<div>
<h1>{value}</h1>
<button onClick={onInc}>+</button>
<button onClick={onDec}>-</button>
</div>
)
class App extends React.Component {
render() {
return (
<div>
<Counter
value={store.getState()}
onInc={() => store.dispatch(
{type: 'INCREMENT'})
}
onDec={() => store.dispatch({
type: 'DECREMENT'
})}
/>
</div>
)
}
}
render(<App />, document.getElementById('root'));