У меня есть гистограмма, которая берет данные по году.Текущее название года я беру из основного компонента следующим образом:
Приложение:
<DonateChart year={this.state.active_menu}/>
DonateChart:
<Bar
data={{
labels: this.props.year === 2018 ? ['20.01', '20.02'] : [20.03],
datasets: [{
label: false,
fill: true,
backgroundColor: "#D9D9D9",
borderCapStyle: 'square',
pointBorderColor: "white",
data: this.props.year === 2018 ? ['2222', '3333'] : ['4444'],
spanGaps: false,
},
{
label: false,
fill: true,
backgroundColor: "#00ACE5",
borderCapStyle: 'square',
pointBorderColor: "white",
data: this.props.year === 2018 ? ['2222', '3333'] : ['4444'],
spanGaps: false,
}],
}}
options={{
responsive: false,
fullCornerRadius: false,
maintainAspectRatio: false,
tooltips: {enabled: false},
hover: {mode: null},
scales: {
yAxes: [{
stacked: true,
ticks: {
fontColor: 'black',
beginAtZero: true,
min: 0,
max: 5000,
stepSize: 1000,
fontFamily: 'HelveticaNeueCyr',
fontSize: 10,
},
gridLines: {
color: "rgba(0, 0, 0, 0.1)",
}
}],
xAxes: [{
stacked: true,
ticks: {
fontColor: '#black',
fontFamily: 'HelveticaNeueCyr',
fontSize: isMobile ? 8 : 10,
},
gridLines: {
color: "rgba(0, 0, 0, 0)",
},
}]
},
legend: {
display: false
},
title: {
display: false,
}
}}/>
Но когда я переключаю год иновый ключ в this.state.year
, график не рисуется.После этого я попытался создать две разные диаграммы и переключаться между ними в зависимости от состояния, например:
const bar1 = <Bar some code />
const bar2 = <Bar some code />
return(
this.state.year === 2018 ? bar1 : bar2
)
Это тоже ни к чему не привело, график искажен.
Подскажите, пожалуйста, как правильно реализовать такой функционал.Буду благодарен за любой совет