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

156
Vistas
¿Puedo pasar la función en lugar de la matriz como segundo argumento a React.useMemo?

¿Puedo pasar array.map(val) => val en lugar de una matriz normal como segundo argumento para el gancho React.useMemo() ? Estoy recibiendo un objeto anidado del servidor como respuesta y no puedo dar esta respuesta para el segundo argumento porque useMemo() solo verifica la instancia del objeto, así que decidí mapear mi respuesta y devolver una matriz de algunas propiedades de los objetos secundarios y páselos como una matriz para el segundo argumento de useMemo() . ¿Hay una mejor idea sobre este problema? ¿Está bien hacer tal cosa?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Debe pasar una matriz al segundo argumento de memo, por lo que la respuesta es no.

Pero si quiere pasar un objeto a la matriz de dependencia, entonces depende.

¿Cambiará este objeto alguna vez? Si la respuesta es afirmativa, su memo también cambiará, y es posible que lo desee o no. Tenga en cuenta que puede tener dos objetos similares {foo: 'bar'} y {foo: 'bar'} que son instancias diferentes, por lo que incluso si el servidor devuelve datos idénticos dos veces, la nota se ejecutará cada vez. Si eso es lo que quieres, adelante, usa [{foo: 'bar'}] como dependencia. Si no desea que la nota se ejecute cuando los dos objetos son equivalentes pero no iguales, debe crear alguna clave primitiva predecible a partir del objeto, por ejemplo, myObject.foo + myObject.bar . Algunas personas usan JSON.stringify, pero desaconsejo eso, JSON.stringify no es determinista, lo que significa que puede obtener una clave diferente cada vez que encadena objetos idénticos.

Aquí puede encontrar una buena lectura sobre el tema, cubre useEffect y useMemo y tiene un ejemplo con isDeepEqual como solución alternativa para comparar si dos objetos son equivalentes https://www.benmvp.com/blog/object-array-dependencies- reaccionar-usarEfecto-gancho/

about 4 years ago · Juan Pablo Isaza Denunciar
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