Crear TODOs: React Context dentro de React Portals
Clase 27 de 34 • Curso de React.js
Contenido del curso
Maquetación con React.js
Interacción con React.js
Librería de Iconos Personalizados
Herramientas avanzadas: escalabilidad, organización y persistencia
- 13

Local Storage con React.js
25:48 min - 14

Custom Hooks
17:53 min - 15

Organización de archivos y carpetas
07:40 min - 16

Feature-First Directories en React
09:12 min - 17

Tips para naming y abstracción de componentes React
12:24 min - 18

¿Qué son los efectos en React?
14:04 min - 19

Estados de carga y error
15:04 min - 20

Actualizando estados desde useEffect
16:20 min - 21

Reto: loading skeletons
11:59 min - 22

¿Qué es React Context?
20:57 min - 23

useContext
10:47 min - 24

¿Qué son los React Portals?
14:03 min - 25

Reto: estados para abrir y cerrar un modal
03:33 min - 26

Maquetando formularios en React
15:08 min - 27

Crear TODOs: React Context dentro de React Portals
Viendo ahora
Deploy
Próximos pasos: React #UnderTheHood
Bonus: creando proyectos en React desde cero
En el mundo del desarrollo web, una correcta gestión de estados y contextos puede ser la diferencia entre una aplicación eficaz y una que no lo es tanto. Hoy te llevaremos a través del uso de useContext y la gestión del estado en una aplicación de tareas, puntualizando cómo integrar funcionalidades que enriquezcan la experiencia de usuario, asegurando una aplicación reactiva y eficiente que persiste datos de manera local.
¿Cómo integrar useContext en tu aplicación de tareas?
useContext es una herramienta esencial al momento de manejar estados globales en React. Nos permite acceder y modificar el estado desde cualquier componente sin la necesidad de prop drilling. Aquí te explicamos cómo hacerlo:
- Primero, llama a
useContexty pasa el contexto de tu aplicación. Esto se hace importandouseContextde React y tu archivo de contexto. - Extrae las propiedades y funciones que necesitarás del contexto. Por ejemplo, si necesitas actualizar el estado del modal en tu aplicación, utiliza algo como
setOpenModaldel contexto.
¿Cuáles son las funciones imprescindibles en una aplicación de tareas?
Toda aplicación de tareas requiere un conjunto de funciones básicas para ser operativa:
- Añadir tareas (to-dos).
- Marcar tareas como completadas.
- Eliminar tareas.
- Filtrar o buscar tareas.
Adicionalmente, debes gestionar el estado del modal, tanto para abrirlo como para cerrarlo. Esto es para permitir al usuario interactuar con el formulario de añadir nuevas tareas.
¿Cómo se maneja un formulario con estados locales y globales?
La gestión de formularios es fundamental en la experiencia del usuario. Para ello, maneja un estado local para los inputs y un estado global para actualizar la lista de tareas:
- Crear un estado local, como
newTodoValue, que almacene temporalmente la entrada del usuario. - Este estado se actualizará con cada modificación en el campo de texto mediante una función
onChange. - Al enviar el formulario, se debe tener una función que interactúe con el contexto global y actualice el listado de tareas con el
newTodoValue.
¿Por qué separar la lógica de la interfaz?
Es buena práctica mantener la lógica de negocio alejada de la interfaz de usuario en tu código:
- Separar la lógica ayuda a mantener tu código organizado y más fácil de entender y mantener.
- Crea funciones como
onSubmityonCancelfuera del return de JSX para manejar los eventos del formulario y los botones, respectivamente.
¿Cómo implementar persistencia de datos con localStorage?
Para que las tareas permanezcan después de recargar la página, debes implementar persistencia de datos:
- Utiliza el
localStoragepara guardar el estado de las tareas. - Crea una función dentro de tu contexto que maneje la actualización tanto del estado como del
localStoragecuando se añada una nueva tarea.
¿Cómo preparar tu aplicación para el deploy?
Finalmente, antes de compartir tu aplicación con el mundo, debes asegurarte de que todo funciona correctamente:
- Prueba todas las funcionalidades: agregar, completar, eliminar y filtrar tareas.
- Asegúrate de que los cambios persisten incluso después de recargar la página.
- Revisa que el modal tenga el estado inicial correcto y no se abra automáticamente al recargar.
Con estos pasos claves, refuerzas la funcionalidad y robustez de tu aplicación de tareas, mejorando significativamente la experiencia del usuario. Recuerda, aprender y aplicar nuevas funcionalidades es un camino contínuo de mejora y excelencia en el desarrollo web. ¡Manten esa curiosidad y pasión por aprender siempre activa!