Advertisement
Guest User

Untitled

a guest
May 3rd, 2017
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var COLORS = ["red", "green", "yellow", "blue", "brown"];
  2.  
  3. var ColorPicker = React.createClass({
  4.   render: function () {
  5.     return (
  6.       <div className="ColorPicker">
  7.         { COLORS.map((element, index) => {
  8.           return (
  9.             <Color
  10.               onColorChange={this.props.onColorChange}
  11.               key={index}
  12.               color={element}
  13.             />
  14.           );
  15.         })}
  16.       </div>
  17.     );
  18.   }
  19. });
  20.  
  21. var Color = React.createClass({
  22.   handleClick: function () {
  23.     this.props.onColorChange(this.props.color);
  24.   },
  25.   render: function () {
  26.     return <div
  27.       className="Color"
  28.       color={this.props.color}
  29.       style={{backgroundColor: this.props.color}}
  30.       onClick={this.handleClick}
  31.     />;
  32.   }
  33. });
  34.  
  35. var Target = React.createClass({
  36.   render: function () {
  37.     return <div className="Target" style={{backgroundColor: this.props.color}}/>;
  38.   }
  39. });
  40.  
  41. var App = React.createClass({
  42.   getInitialState: function () {
  43.     return {
  44.       targetColor: "white"
  45.     }
  46.   },
  47.  
  48.   onColorChange(color) {
  49.     this.setState({
  50.       targetColor: color,
  51.     })
  52.   },
  53.  
  54.   render: function () {
  55.     return (
  56.       <div>
  57.         <Target color={this.state.targetColor}/>
  58.         <ColorPicker onColorChange={this.onColorChange} />
  59.       </div>
  60.     );
  61.   }
  62. });
  63.  
  64. ReactDOM.render(<App />, document.getElementById("app"));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement