🎉4) Creando el primer componente reutilizable con React
Arquitectura orientada a componentes
Las aplicaciones construidas con react tienen una arquitectura orientada a componentes. Esto provee un nivel de abstracción mayor que colabora a que podamos tener muchos componentes reutilizables a lo largo de la aplicación, facilitando el desarrollo y el mantenimiento.
Primer componente reutilizable
Vamos a crear nuestro primer componente reutilizable, en este ejemplo haremos una card utilizada en la home de Mercado Libre.
Componentes del componente
A simple vista podemos ver que este componente contiene varios sub componentes: Imagen, categoría, título y botón.
Si pensamos cómo podríamos estructurar este componente podríamos tener algo así:
Estos tags no son tags de HTML, sino que cada uno de ellos son un componente de nuestra propia aplicación.
Ya empezamos a entender cómo se estructuran las aplicaciones en react. Ahora necesitamos que nuestro componente pueda cargar la información dinámicamente, hasta ahora los datos están fijos por lo tanto no es un componente reutilizable.
Pasando props a nuestro componente
Conceptualmente todo componente react es una function que recibe propiedades y retorna react elements.
Babel transformará este código a:
Nuestro ejemplo
Sigamos con nuestro componente de ejemplo, pensemos que props podríamos pasarle para hacer que el componente sea reutilizable.
El componente ahora carga la información de manera dinámica, por lo tanto podemos utilizarlo desde varios lugares dentro de nuestra aplicación.
Para repasar sobre la importancia del uso de JSX veamos cómo sería escribir nuestro componente sin JSX.
Utilizando nuestro componente
Ahora que hicimos reutilizable nuestro componente, hagamos un ejemplo sobre cómo utilizarlo.
Hermoso, nuestro componente ya es completamente reutilizable. Esto lo logramos gracias a las props de react.
Es importante tratar de dividir nuestra aplicación en componentes lo más pequeños posibles, esto ayuda a que escribamos menos código, tengamos aplicaciones robustas, con menos bugs, testeables y fáciles de mantener.
Práctico
Llevemos esto a la práctica:
Last updated