Recompose Form
by wuct
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.24/browser.js"></script>
<script src="https://fb.me/react-with-addons-15.0.1.js"></script>
<script src="https://fb.me/react-dom-15.0.1.js"></script>
<script src="https://npmcdn.com/[email protected]/build/Recompose.js"></script>
<script src="https://facebook.github.io/react/js/jsfiddle-integration-babel.js"></script>
<div id="container">
<!-- This element's contents will be replaced with your component. -->
</div>
JavaScript 1.7
const { compose, withState, withHandlers } = Recompose
const enhance = compose(
withState('count', 'updateCount', 0),
withHandlers({
increment: props => () => props.updateCount(n => n + 1),
decrement: props => () => props.updateCount(n => n - 1)
})
)
const Counter = enhance(({ count, increment, decrement }) =>
<div>
Count: {count}
<div>
<button onClick={increment}>+</button>
<button onClick={decrement}>-</button>
</div>
</div>
)
ReactDOM.render(
<Counter />,
document.getElementById('container')
)