Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

142
Vistas
¿Cómo resuelvo este problema de la entrevista del ciclo de vida de React?

Fui entrevistado con las siguientes preguntas, obtuve la respuesta explicada por mi entrevistador. Pero después de la entrevista, traté de recrear el problema. Obtuve resultados diferentes

Aquí está el código y la respuesta es para explicar lo que se imprimirá en la consola.

 function App() { const [foo, setFoo] = useState('a'); useEffect(() => { setFoo('b'); }, []); useEffect(() => { console.log("effect ", foo); }, [foo]); console.log("render ", foo); return ( <div></div> ); }

Lo siguiente es mi entendimiento (y la explicación del entrevistador)

  1. renderizará los componentes
  2. encontrado con useEffect y los almacenó en la pila primero
  3. 'hacer un'
  4. Tengo que lidiar con lo que hay dentro de la pila
  5. Primero useEffect -> sabe que tenemos que configurar Foo, pero espere hasta que se procese otro useEffect
  6. Segundo usoEfecto -> 'efecto a'
  7. setFoo('b') y volver a renderizar
  8. Pase el primer useEffect ya que es una dependencia vacía
  9. poner el segundo efecto de uso en la pila
  10. 'hacer b'
  11. lidiar con el segundo efecto de uso -> 'efecto b'

Así que la salida se supone que es

 'render a' 'effect a' 'render b' 'effect b'

pero cuando ejecuté el código, lo que obtuve es

 'render a' 'effect a' 'effect a' 'render b' 'effect b'

¿Por qué hay un 'efecto a' adicional?

¿Y hay algún material de lectura sobre el ciclo de vida de los componentes funcionales?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda