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

187
Vistas
¿Cómo devolver correctamente el estado actualizado cuando se usa el método de ciclo de vida getDerivedStateFromProps?

Por ejemplo tenemos tal estado:

state = { hasSomething: true, anotherKey: '', ... }

y deberíamos actualizar solo 'hasSomething':

 static getDerivedStateFromProps(nextProps) { if (nextProps.accessKey === 'admin') { return { hasSomething: false, }; } return null; }

¿Necesitamos destruir el prevState cuando devolvemos el nuevo estado? por ejemplo asi:

 static getDerivedStateFromProps(nextProps, prevState) { if (nextProps.accessKey === 'admin') { return { ...prevState, hasSomething: false, }; } return null; }

o no lo necesitamos? Revisé console.log (this.state) y devuelve todo el estado local si no hago una destrucción de prevState.

no puedo encontrar esta información en la documentación oficial de reacción :(

PD: esta lógica es solo un ejemplo :)

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

0

La documentación oficial dice It should return an object to update the state, or null to update nothing. ( https://reactjs.org/docs/react-component.html#static-getderivedstatefromprops ). No se borra el estado cuando devuelve solo una parte, por lo que funciona como setState ( https://reactjs.org/docs/react-component.html#setstate ). La documentación setState dice You may optionally pass an object as the first argument to setState() instead of a function. This performs a shallow merge of stateChange into the new state. , por lo que no necesita destruir el estado anterior.

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