this.refsを介して子コンポーネント内の関数を呼び出そうとしていますが、この関数が存在しないというエラーが発生し続けます。React:子コンポーネント内で関数を呼び出す
Uncaught TypeError: this.refs.todayKpi.loadTodaysKpi is not a function
親コンポーネント:
class KpisHeader extends React.Component {
constructor() {
super();
this.onUpdate = this.onUpdate.bind(this);
}
render(){
return <div>
<DateRange ref="dateRange" onUpdate={this.onUpdate}/>
<TodayKpi ref="todayKpi" {...this.state}/>
</div>;
}
onUpdate(val){
this.setState({
startDate: val.startDate,
endDate: val.endDate
}, function(){
this.refs.todayKpi.loadTodaysKpi();
});
}
}
私は、関数にonUpdateを通じてのDateRangeコンポーネントからいくつかのデータを取得したい、と私は、サーバーからデータを取得TodayKpi内部機能をトリガします。今のところそれは単なるconsole.log( "AAA");です。
子コンポーネント:
class TodayKpi extends React.Component {
constructor() {
super();
this.loadTodaysKpi = this.loadTodaysKpi.bind(this);
}
render(){
console.log(this.props.startDate + " "+ this.props.endDate);
return <div className="today-kpi">
</div>;
}
loadTodaysKpi(){
console.log("AAAA");
}
}
どのように私はこれを実装する必要がありますか?あなたが子供の内部で呼び出される関数/メソッドを使用する場合は