[英]How to pass data from child component to parent component in reactjs
我是React JS的新手。 我很難理解如何從組件中獲取數據。
我希望能夠獲取所選日期並將日期輸出到控制台,我正在使用react-datepicker
這是DateOptions.jsx
var DateOptions = React.createClass({
getInitialState: function() {
return {
startDate: moment(),
endDate: moment()
};
},
handleChangeStart: function(date) {
this.setState({
startDate: date
});
},
handleChangeEnd: function(date){
this.setState({
endDate: date
});
},
render: function() {
return (
<div>
<label>Start Date:</label>
<DatePicker
selected={this.state.startDate}
selectsStart startDate={this.state.startDate}
endDate={this.state.endDate}
onChange={this.handleChangeStart}
/>
<label>End Date:</label>
<DatePicker
selected={this.state.endDate}
selectsEnd startDate={this.state.startDate}
endDate={this.state.endDate}
onChange={this.handleChangeEnd}
/>
</div>
)
}
});
然后在我的Main.jsx中
var Main = React.createClass({
render: function(){
return <DateOptions/>
}
})
非常感謝您的幫助!
要從child component
獲取數據,您需要使用props
, props
用於將data
或methods
從parent component
傳遞到child component
。
第1步:將一個函數從父組件傳遞給子組件,如下所示:
var Main = React.createClass({
getData:function(data){
console.log(data);
},
render: function(){
return <DateOptions getData={this.getData}/>
}
})
第2步:在child component
使用此method
將數據傳遞回parent component
,如下所示:
var DateOptions = React.createClass({
getInitialState: function() {
return {
date: moment()
};
},
handleChange: function(date) {
this.setState({
date: date
});
this.props.getData(date);
},
render: function() {
return (
<div>
<DatePicker
selected={this.state.date}
onChange={this.handleChange}
/>
</div>
)
}
});
檢查jsfiddle
以獲取輸入元素的類似示例,您將了解其工作原理: https : jsfiddle
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.