Jerarquías de Componentes
Paso 2: Modularizar en Componentes
En este segundo paso romperemos el bloque monolítico de la función App para crear componentes independientes y reutilizables.
Un componente en React no es más que una función de JavaScript que retorna elementos de JSX y cuyo nombre siempre debe empezar con mayúscula inicial (por ejemplo: TodoForm en lugar de todoForm).
Código del Paso 2 (index.html)
Conceptos clave del paso 2:
- Jerarquía de componentes: Ahora
Appactúa como componente "Padre", el cual renderiza dentro aHeader,TodoFormyTodoList. A su vez,TodoListes el Padre de múltiples componentesTodoItem(sus "Hijos"). - Mayúsculas obligatorias: Si nombras a un componente
function todoItem(), React pensará que es una etiqueta nativa de HTML como<div>o<p>y dará un error. La inicial mayúscula (Upper CamelCase al nombrarTodoItem) es obligatoria. - ¿Hasta dónde hemos llegado?: Al ejecutar
index.htmllas 3 tareas tienen exactamente el mismo contenido. Esto sucede porqueTodoItemtiene un texto literal (en informática, se llamahardcodedcuando se dejan fijos, textos que deberían ser dinámicos.). En el siguiente paso resolveremos esto usando Props para pasarle datos dinámicos a cada componente.