Operações assíncronas (chamadas de API) têm múltiplos resultados possíveis, portanto você deve modelar mais do que apenas os dados — você precisa representar loading, success e error states. Modelar isso bem evita bugs de UI como mostrar dados obsoletos ou nenhum feedback.
The naive approach and its flaws
[data, setData] = ();
[loading, setLoading] = ();
[error, setError] = ();
