Come collegare un'API REST a un'app React senza che si blocchi?

Marta Gonzalez CO 🌱 Principiante 👁 56 ⚑ Segnala Programmazione

Sto facendo un'app con React e ho bisogno di recuperare i dati da un'API, ma ogni volta che carico la pagina si fa una richiesta doppia e l'app diventa lenta. Ho già provato con useEffect ma continua a succedere, cosa sto facendo di sbagliato?

1 risposte

★ Miglior risposta

La doppia richiesta in sviluppo è quasi sicura con React 18 con StrictMode attivato, che monta e smonta i componenti apposta per rilevare effetti collaterali. Per evitarlo, assicurati che il tuo useEffect abbia una dipendenza vuota `[]` se vuoi eseguirlo solo una volta al mount, e ripulisci le richieste in sospeso con un AbortController o un flag booleano nella cleanup function perché non cerchi di aggiornare lo stato se il componente si smonta. Se hai già fatto questo e continua ad andare lento, il problema probabilmente è che stai aggiornando lo stato inutilmente o facendo render massivi; usa React DevTools Profiler per vedere dov'è che si blocca, e considera di usare `useMemo` o `useCallback` se hai molti calcoli o passi callback ai componenti figli.

La tua risposta

Accediper rispondere.