React Base Fiddle (JSX)

Starting point for creating JSFiddles with React. This uses React with Addons.

by alalonde

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-0.14.6.js"></script>
<script src="https://fb.me/react-dom-0.14.6.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>

CSS

@keyframes highlight-green-fade {
    0% { background: #15F700; }
    100% { background: transparent; }
  }
  .node-status-enter.node-status-enter-active { animation: highlight-green-fade 1.5s ease-out; }

  @keyframes highlight-fade-remove {
    0% { background: #ff0000; }
    100% { background: transparent; display: none; }
  }
  .node-status-leave.node-status-leave-active { animation: highlight-fade-remove 1.5s ease-out; }

JavaScript 1.7

var Hello = React.createClass({
	getInitialState: function() {
  	return {
    	items: ['a', 'b', 'c', 'd', 'e']
    };
  },
  addItem: function() {
  	var items = this.state.items;
    items.push(items.length);
  	this.setState({items: items});
  },
  removeItem: function() {
  	var items = this.state.items;
    items.shift();
    this.setState({items: items});
  },
  render: function() {
  	var children = this.state.items.map((item, index) => {
    	return <Item key={index} item={item}/>;
    });
    return (
    	<div>
    		<button type="button" onClick={this.addItem}>Add</button>
        <button type="button" onClick={this.removeItem}>Remove</button>
        <React.addons.CSSTransitionGroup transitionName="node-status" transitionEnterTimeout={1500} transitionLeaveTimeout={1500}>
      	  {children}
        </React.addons.CSSTransitionGroup>
      </div>
    );
  }
});

var Item = React.createClass({
  render: function() {
    return <div>{this.props.item}</div>;
  }
});

ReactDOM.render(
  <Hello name="World" />,
  document.getElementById('container')
);