Entonces, lo que es mejor es realmente crear, por ejemplo, un estado, ¿verdad? Esta es como la cosa principal en React, donde tienes esta fuente única a través del estado, y luego, basado en el estado, renderizas. Y si quieres cambiar algo en la pantalla, básicamente cambias el estado. Así que ahora agrego la función sobre el estado, sobre cambiar el estado. Y no olvido que después de actualizar el estado, realmente tengo que volver a renderizar. Así que hago esto ahora, y luego en mi función de renderizado, explico de manera declarativa lo que necesita suceder. Si esto está cargando, entonces muestra esto. Y todo esto no tiene nada que ver con React. Puedes ver que podría simplemente obtener esto, podría usarlo sin React.
Así que la forma declarativa de escribir y pensar no está ligada a React. Podrías realmente tomar este concepto, este patrón, usarlo en otro lugar. Y esto lleva a la misma conclusión, donde tenemos este flujo de datos unidireccional, donde tienes estado, cambio, re-renderizado, interacción del usuario, cambio del estado, y luego haces lo mismo. Así que este tipo de flujo no era realmente típico en el pasado. Cuando Angular, por ejemplo, llegó, había este enlace de datos bidireccional, que es como lo opuesto a esto. Escribes algo, tienes el estado, luego tienes la UI, y estas cosas están sincronizadas inmediatamente entre sí.
Así que cuando cambias uno, el otro se actualiza automáticamente. Cuando cambias la UI, tienes el estado actualizado automáticamente. Y esto fue hecho por el framework. Mientras que el concepto aquí en React es diferente, para que cambies algo, tienes que ir y actualizar el estado. Por eso tenemos esta entrada no controlada y controlada, ¿verdad? La idea de tener esta entrada es realmente interesante, porque la primera vez que probé React, tenía este campo de entrada, y no podía actualizar el valor del campo de entrada. Estoy escribiendo en el campo, ¿por qué no está cambiando? No está cambiando porque tenía este valor en el estado, y solo estoy pasando el valor del campo de entrada a las entradas, pero no estoy actualizando el estado con el hook.
Comments