Я так понял, что useEffect не очень дружит с setState, потому вопрос - как стоит организовать цепочку [получение данных] -> [обработка данных] -> [setState]?
const [data, setData] = React.useState(null)
React.useEffect(() => {
const fetchedData = /* как-то данные получить */
setData(fetchedData)
}, [])
return data ? <p>{ JSON.stringify(data) } </p> : null