Невозможно установить состояние, используя функцию, возвращаемую из ловушки useState.
Оборачивая больше функций и регистрируя их в любой возможной точке, он успешно асинхронно получает новые данные вплоть до вызова setData, который я могуне найти способ достичь пика внутри.Я также проверил перед рендерингом, чтобы увидеть, изменяются ли данные в состоянии, но не на веб-странице, но объект данных не изменяется в значении после вызова setData.
function PollResults(props) {
const classes = useStyles2();
const [data, setData] = useState([]);
const changeData = data => {
console.log(data);
setData(data);
};
useEffect(() => {
subscribeToResults(props.id, data => {
//console.log(data);
changeData(data);
});
return () => {
unsubscribeToResults(props.id);
};
}, [props.id, setData]);
//console.log(data);
return <VictoryPie animate colorScale="qualitative" data={data} />;
}