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

89
Vistas
Componente funcional que no se vuelve a renderizar en el cambio de estado

Estoy buscando volver a renderizar una parte específica de este componente (dentro del .map de mi JSX), según el valor de mi optionObject que esté configurado como verdadero.

Cualquier idea sobre dónde me estoy equivocando sería muy apreciada, todavía un poco nuevo en React/componentes funcionales.

 const [optionObject, setOptionObject] = useState( { 'one' : false, 'two' : false, 'three' : true, } ) function switchOption(selectedOption) { var objectCopy = optionObject; for (const [key, value] of Object.entries(objectCopy)) { if (key !== selectedOption) { objectCopy[key] = false; } else { objectCopy[key] = true; } } setOptionObject(objectCopy); } return ( <> <div className={styles.browseOptions}> <div onClick={()=>switchOption(1)} className={`${styles.option} ${optionObject['one'] ? styles.active : ''}`}><h3>One</h3></div> <div onClick={()=>switchOption(2)} className={`${styles.option} ${optionObject['two'] ? styles.active : ''}`}><h3>Two</h3></div> <div onClick={()=>switchOption(3)} className={`${styles.option} ${optionObject['three] ? styles.active : ''}`}><h3>Three</h3></div> {multi_grid_tiles_data?.map((grid, i) => { if (optionObject[grid['parent']['name']]) return ( <div key={"gridList-"+i}> <GridList grid_data={grid_data}/> </div> ); })} </> );
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

cambio

 var objectCopy = optionObject;

a

 var objectCopy = {...optionObject};

Como el primero no copia un objeto, solo apunta a la referencia del objeto existente, por lo tanto, es el mismo objeto. Este último crea una nueva referencia de objeto y extiende los contenidos antiguos en él.

Para que su componente se vuelva a representar en función de los objetos que se actualizan en estado, tiene que ser una nueva referencia de objeto. (lo mismo para matrices)

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