Я использую React-Redux с Thunk. Мой генератор действий инициирует вызов API и через thunk, а затем получает данные в ожидаемом состоянии. Я вызываю генератор действий в функции useEffect. Когда у меня есть данные из API, я хочу обновить круговую диаграмму, которая у меня есть в виде представления. Но я не могу понять, как это сделать. Так как я загружаю данные из состояния в массив (источник данных в таблицу ap ie) после успешного вызова API и данных в состоянии.
Пожалуйста, ниже приведен код, о котором идет речь.
useEffect(()=> {
const reqData = {
"customerId" : "5",
"month" : "12",
"year" : "2019"
};
initCategoryExpInfo(reqData,()=>{
initPieChartData();
});
},[navigation,initCategoryExpInfo]);
......
const initPieChartData = () => {
for(i = 0;i < categoryExpenses.length;i++) {
var item = categoryExpenses[i];
series.push(item.expenseAmount);
}
};
Я подключил действия через функцию редукса connect и props to state также, что, я думаю, работает нормально, так как я получаю данные в хранилище просто отлично, ниже показано, как генератор действий выглядит как
export const performGetAllExpensesByCat = (reqData,callback) => (dispatch, _, {api}) => {
return getAllExpensesByCat(api)(reqData).then(res => {
console.log(res.data);
dispatch(setExpensesByCat(res));
callback();
});
};
Единственный вопрос - как обновить sh компонент, чтобы моя круговая диаграмма обновлялась
<PieChart
chart_wh={chart_wh}
series={series}
sliceColor={sliceColor}
doughnut={true}
coverRadius={0.7}
coverFill={'#FFF'}
/>