Я передаю свои данные из дочернего компонента в родительский компонент нажатием кнопки и генерирую данные в виде графика.Но данные из дочернего компонента отображаются неопределенными, как только его состояние обновляется, поэтому никакие данные не передаются в родительский компонент.
Вот мой родительский компонент:
class ButtonAll extends Component{
constructor(props){
super(props);
this.state = {
childData: ''
}
}
getData = (data) => {
this.setState({
childData: data
})
}
render(){
return(
<div style={{ display: 'flex', flexDirection: 'row'}}>
<div>
<YearButton sendData={this.getData} />
</div>
</div>
)
}
export default ButtonAll;
Вот мой дочерний компонент:
class YearButton extends Component{
constructor(){
super();
this.state = {
data1: [],
}
}
getData = async () => {
var res = await axios.get('http://132.148.144.133:5000/api/v1/resources/tweet/count/xxhkfh2873jiqlp');
var data1 = JSON.parse(res.data);
data1 = data1.map(el => [el[0]*1000, el[1]]);
console.log(data1, 'first data');
this.setState({
data1: data1
}, () => {
this.props.sendData(this.state.data1)
})
}
render(){
return(
<div>
<button className="year" onClick={this.getData}>year</button>
</div>
)
}
}
export default YearButton;
Как только я нажимаю кнопку, он утешает undefined
длястрока this.props.sendData(this.state.data1)
.
Я должен добиться аналогичной вещи и для других компонентов, но ничего не передается родителю.Пожалуйста, помогите с проблемой.