<main></main>
var Display = React.createClass({
  propTypes: {
    number: React.PropTypes.number
  },
  render: function() {
    return <p className="display">{this.props.number}</p>
  }
});

var Counter = React.createClass({
  getInitialState: function() {
    return { clicks: 0 };
  },
  onClick: function(e) {
    this.setState({ clicks: this.state.clicks + 1 });    
  },
  render: function() {
    return (<div className="counter">
        <button onClick={this.onClick}>Click Here</button>
        <Display number={this.state.clicks} />
        <Display number={this.state.clicks} />
        <Display number={this.state.clicks} />
      </div>);
  }
});

var App = React.createClass({
  render: function render() {
    return (
      <div>
        <Counter />
        <Counter />
      </div>
    );
  }
});

ReactDOM.render(<App name="ynon" />, document.querySelector('main'));
View Compiled

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://fb.me/react-15.1.0.min.js
  2. https://fb.me/react-dom-15.1.0.min.js