我對React非常陌生。我正在通過創建一個非常簡單的九格框來練習,用戶可以通過使用下拉菜單選擇他們想要使用的顏色。唯一的問題是,我無法弄清楚如何將包含它的類(ColorPicker)的變量傳遞給包含網格的類(Box)。任何人都可以給我一些關於如何做到這一點的指針?如何在React.js中將道具從一個類傳遞到另一個類
我仍然習慣於將道具傳遞給其他類。
這裏給CodePen鏈接:http://codepen.io/anfperez/pen/RorKge
這裏是我的代碼
//this displays the color selections for the boxes: red, green, and blue
var ColorPicker = React.createClass({
handleChange: function(e) {
var newColor = e.target.value;
this.props.onChange(color);
},
render: function() {
return (
<div>
<select id="pick-colors" onChange={this.handleChange}>
<option value="red">
Red
</option>
<option value="green">
Green
</option>
<option value="blue">
Blue
</option>
</select>
</div>
)
}
});
//contains the boxes that will eventually change color
var Box = React.createClass({
getInitialState: function() {
return {
//boxes are initially white
color: 'white'
};
},
changeColor: function(newColor) {
var newColor = this.state.color;
this.setState({
color: newColor
});
},
render: function() {
return (
<div >
<div className='box' style={{background:this.state.color}} onClick={this.changeColor}>
</div>
</div>
);
}
});