Custom Hooks
Clase 14 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
Viendo ahora - 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
15:16 min
Deploy
Próximos pasos: React #UnderTheHood
Bonus: creando proyectos en React desde cero
En la jornada de aprendizaje como desarrollador de aplicaciones, es crucial mantener un código ordenado y eficiente. Una práctica esencial en ReactJS es la abstracción de lógica a través de Custom Hooks, que facilitan la reusabilidad y legibilidad del código. Ahora bien, ¿en qué consiste este procedimiento y cuándo se debe poner en práctica? Vamos a desentrañar estos conceptos y aprender a implementar un Custom Hook para el manejo de Local Storage en una aplicación.
¿Qué son los custom hooks en ReactJS?
Los Custom Hooks son herramientas poderosas que ofrece ReactJS para extraer lógica de componentes y hacerla reutilizable en diferentes partes de la aplicación. Siguiendo la convención de nombramiento con "use" al inicio, estos hooks personalizados nos permiten simplificar componentes complejos y limpiar el código.
¿Cómo crear un custom hook para Local Storage?
Al implementar un Custom Hook, como useLocalStorage, centralizamos la lógica de operaciones recurrentes de Local Storage. Para comenzar, se traspasa toda la lógica de persistencia de datos a este nuevo hook, dejando el componente principal enfocado en su función esencial.
¿Qué ventajas ofrece el uso de custom hooks?
- Legibilidad Mejorada: El componente principal se libera de lógica adicional, lo que hace que el código sea más fácil de leer y mantener.
- Reusabilidad: El Custom Hook puede usarse en diversos componentes que necesiten interactuar con Local Storage.
- Abstracción: Oculta la complejidad de la gestión de Local Storage, ofreciendo una interfaz simple para su uso.
¿Cómo se estructura useLocalStorage?
- Se declara un estado interno para los items utilizando
useState. - Se define una función, por ejemplo
saveItem, que actualiza tanto el estado interno del hook como el Local Storage.
¿Cómo pasar argumentos a un custom hook?
Se pueden pasar parámetros al Custom Hook para que sea más configurable y adaptable. Por ejemplo, el itemName, que determina la clave para Local Storage, y un valor inicial initialValue, son argumentos flexibles que responden a las necesidades específicas de almacenamiento.
¿Cómo consumir un custom hook en un componente?
- Se importa el hook personalizado en el componente.
- Se extraen el estado y la función actualizadora desde el hook como un array.
- Se utiliza la información retornada en el hook en lugar de la lógica directa de Local Storage.
¿Cuándo aplicar custom hooks en nuestros proyectos?
La decisión de cuándo abstraer la lógica a Custom Hooks no sigue una regla fija; depende del criterio y la experiencia del desarrollador. Es importante evaluar si la abstracción mejora realmente la claridad y mantenibilidad del código sin invertir tiempo innecesariamente cuando no es necesario. La clave está en practicar, construir proyectos diversos y calibrar cuándo la complejidad del componente justifica la creación de un hook personalizado.
En resumen, los Custom Hooks abren una puerta hacia un código más claro y fácil de mantener. Experimentar con ellos es parte esencial de la mejora continua como desarrollador. No hay un mandato estricto que dicte cuándo implementarlos, pero con la práctica, cualquier estudiante de programación ganará la habilidad para identificar el momento adecuado para su uso. Y ahora que hemos aclarado cómo funcionan y cómo pueden ayudarnos, es tiempo de sumergirse en el código y empezar a aplicar estos conocimientos. ¡Adelante con esa aventura de aprendizaje!