Когда я перечисляю новые данные, они обновляются, но тогда диаграмма обновляется только в первый раз. У меня нет доступа к компоненту Line, поэтому я не могу выполнить для него componentWillReceiveProps (nextProps). Как я могу обновлять диаграмму при каждом новом изменении состояния?
import React, { Component } from 'react';
import {Line} from 'react-chartjs-2';
class Chart extends Component {
componentWillReceiveProps(nextProps) {
debugger
this.setState({ data: nextProps.info });
}
constructor(props) {
super(props);
this.state = {
data: []
}
}
render() {
let chart = {
chartData:{
labels: this.state.data,
datasets:[
{
label: 'Weight',
data: this.state.data,
backgroundColor:[
'rgba(54, 162, 235, 0.6)',
'rgba(255, 206, 86, 0.6)',
]
}
]
}
}
return (
<div className = "chart" style = {{height: 200 + "px", width: 100 + "%"}}>
<Line
data = {chart.chartData}
width = {100}
height = {50}
options = {{
maintainAspectRatio: false
}}
/>
<ul>
{this.state.data.map(val=> <li>{val}</li>)}
</ul>
</div>
);
}
}





Планируете ли вы заменить
dataвнутри этого компонента? В противном случае вам вообще не нужно использоватьstate, и вы можете просто использоватьthis.props.infoнепосредственно вrender().