¿Es una buena práctica usar IIFE en useEffect o debería declarar la función asíncrona y luego llamarla?
useEffect(() => { (async () => { const response = await fetch( "https://jsonplaceholder.typicode.com/posts" ); const json = await response.json(); setPosts(json); })(); });Como muchos de ustedes ya sabrán, no puede pasar una función asíncrona al gancho useEffect en React. Debido a IIFE de una manera indirecta, todavía podemos
Verá para nuestro enlace useEffect que podemos usar la sintaxis async-await usando un IIFE. Eso es realmente. Es así de simple. Los IIFE desbloquean el potencial para usar la sintaxis asíncrona-espera dentro del gancho useeffect.
Conclusión Los IIFE son una práctica de codificación de JavaScript realmente poderosa que es útil para muchos casos de uso diferentes. Resulta que useEffect no es una excepción.
Sugeriría usar IIFE en lugar de declarar la función asíncrona y llamarla. porque va a usar la función asíncrona declarada solo una vez en useEffect y es precisamente el caso de uso para IIFE.