Saltar al contenido

Los ganchos de reacción useState setValue todavía se vuelven a renderizar una vez más cuando el valor es igual

Verificamos de forma profundamente cada una de las reseñas de nuestra web con la meta de enseñarte siempre la información veraz y actualizada.

Solución:

React no puede adivinar que la salida de render() no cambiará: tiene que renderizar() nuevamente y comparar los resultados con el render() anterior.

Entonces sucede la magia: si no hay diferencias, el DOM no se actualiza; si hay diferencias, solo intenta crear/destruir elementos según sea necesario, porque esa es la parte costosa, no ejecutar render(), bueno, no debería ser así.

Cambiar el estado normalmente desencadena una llamada a render() (no necesariamente modificaciones DOM), pero si desea controlar ese comportamiento, defina shouldComponentUpdate.


Nota: Eso se aplica a los componentes que no son de gancho. Sin embargo, no conocía el comportamiento de manos era ligeramente diferente al de un componente regular: parece que tiene razón al esperar setState no activar un renderizado cuando el valor no cambia; consulte la respuesta de Yash Joshi.

Este hilo puede ayudarlo: Reaccionar: volver a renderizar en el estado de configuración - Hooks vs. this.setState

Además, puede consultar el segundo párrafo aquí que dice:

Tenga en cuenta que es posible que React aún necesite renderizar ese componente específico nuevamente antes de rescatar. Eso no debería ser una preocupación porque React no profundizará innecesariamente en el árbol. Si está haciendo cálculos costosos mientras renderiza, puede optimizarlos con useMemo.

Acuérdate de que puedes optar por la opción de esclarecer tu experiencia si te fue preciso.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada.