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

83
Vistas
extender dos objetos diferentes con ternario

Tengo el siguiente código y quiero manipular el estado bajo ciertas condiciones, ¿cómo agregar el estado objetivo al objeto de estado? Probé opciones de remolque, ninguna ha funcionado

 const trueArr = { a: true, b: true, c:true }; const falseArr ={ a: false, b: false, c: false }; setSate({ ...iniciSate, [foo == 'test' ? trueArr : falseArr] }); setSate({ ...iniciSate, {foo == 'test' ? ...trueArr : ...falseArr} });

about 4 years ago · Santiago Gelvez
2 Respuestas
Responde la pregunta

0

Esta es una pregunta de javascript y no de React.

Para agregar condicionalmente las propiedades de este o aquel objeto a otro (usando spread):

 const state = {x:1} const trueArr = { a: true, b: true, c:true } const falseArr ={ a: false, b: false, c: false } console.log( {...state, ...(true ? trueArr : falseArr)}, // or "false" {...state, ...(false ? trueArr : falseArr)} )

Cuando escribe ...(true ? trueArr : falseArr) , entonces los paréntesis que lo rodean lo evalúan primero, por lo que el operador de propagación ( ... ) "sabe" a cuál de las dos opciones se aplica (el resultado evaluado)

about 4 years ago · Santiago Gelvez Denunciar

0

Estabas muy cerca:

 setSate({ ...iniciSate, (foo == 'test') ? ...trueArr : ...falseArr });
about 4 years ago · Santiago Gelvez 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