GuíaBásico
Guía de Estado y Datos en el Frontend
Aprende a manejar el estado y los datos de una app frontend a escala: distinguir los cuatro tipos de estado —local, global de cliente, del servidor y de la URL—, usar Context sin abusar de él, elegir un store global (patrón Zustand) cuando corresponde, y, lo central de la guía, tratar el estado del servidor como lo que es: un caché de datos remotos, manejado con React Query (TanStack Query) para fetching, caché, revalidación, deduplicación y mutaciones. El eje es que la mayoría de los "problemas de manejo de estado" son en realidad estado del servidor mal clasificado: no es tu estado, es una copia en caché de la verdad que vive en el backend. Cada módulo ejecuta en Node.js una mini-versión de la librería en juego —un store con `getState`/`setState`, un query cache con stale-while-revalidate y deduplicación, una mutación con invalidación y rollback optimista— para verificar el razonamiento. El hilo conductor es el storefront de Mercado, ya construido en la Guía de Fundamentos de React: aquí sus productos vienen del servidor vía React Query, su carrito es un store global, su búsqueda y filtros viven en la URL, y su tema es Context. Continúa directamente de la Guía de Fundamentos de React dentro del ecosistema Fullstack de NIEVA.
- 64
- lecciones
- 8
- módulos
- Inglés · Español
- disponible en
- Sí
- certificado
- Gratis
- acceso
Resultados
Lo que vas a poder hacer
- Clasificar cada pieza de estado en su caja correcta: local, global de cliente, del servidor, o de la URL
- Usar React Context para estado compartido (tema, usuario) sin caer en re-renders innecesarios de todo el subárbol
- Construir y usar un store global (patrón Zustand) con selectores, y saber cuándo un store es mejor que Context
- Entender por qué el estado del servidor es distinto: se vuelve stale, necesita refetch, se comparte entre usuarios, puede fallar
- Buscar datos con React Query: `queryKey`, caché, stale-while-revalidate, deduplicación de requests, y estados de carga y error
- Escribir mutaciones con `useMutation`, invalidar queries tras escribir, y aplicar optimistic updates con rollback
- Usar la URL como fuente de verdad para filtros, búsqueda y paginación: estado compartible, con back/forward del navegador
- Manejar todo el estado del storefront de Mercado en su caja correcta: URL, store global, Context y React Query combinados
Antes de empezar
Qué necesitas traer
Es para ti si...
- Desarrolladores React que ya manejan `useState`/`useEffect` y necesitan escalar a una app con estado compartido y datos remotos
- Devs que meten todo en un store global o sincronizan datos del servidor con `useEffect` a mano y quieren dejar de hacerlo
- Quienes van a construir apps con datos que cambian seguido y necesitan caché, revalidación y mutaciones bien manejadas
- Equipos evaluando Redux, Context o una librería de queries y que buscan el criterio para elegir
Requisitos y materiales
- Fundamentos de React completados: `useState`, eventos, `useEffect`, levantar estado, o haber completado la Guía de Fundamentos de React
- JavaScript ES6+ con soltura
- Node.js instalado para ejecutar la lógica de cada módulo
- Familiaridad básica con `fetch`/HTTP y APIs REST
Contenido
El temario, módulo por módulo
Abre cualquiera para ver sus lecciones.
- Presentación del módulo: los cuatro tipos de estado
- Estado local: la UI de un componente
- Estado global de cliente: lo compartido
- El estado del servidor es un caché
- El estado de la URL: lo compartible
- El bug del estado del servidor mal clasificado
- Clasifica antes de elegir herramienta
- Mini-proyecto: clasifica el estado de Mercado
- Presentación del módulo: el dato que no es tuyo
- El estado del servidor no es tu estado
- Las cuatro propiedades del estado del servidor
- `useEffect` para fetching no tiene caché ni dedup
- Race conditions y copias stale
- Loading y error, repetidos en cada componente
- Necesitas una capa de caché
- Mini-proyecto: auditar el fetching de Mercado
- Presentación del módulo: de orquestar fetches a declarar datos
- `useQuery`: declaras el dato, la librería maneja el estado
- La `queryKey` es la identidad del dato
- La caché y el dedup: N componentes, un fetch
- Stale-while-revalidate: `staleTime` y `gcTime`
- `isLoading`, `isError`, `data`, `isFetching`
- React Query en Mercado: catálogo y búsqueda
- Mini-proyecto: los productos de Mercado con React Query
- Presentación del módulo: un método, cuatro cajas, una app
- La tabla de clasificación, completa
- La capa 1: el tema y el usuario en Context
- La capa 2: el carrito en el store global
- La capa 3: los productos con React Query
- La capa 4: una mutación con invalidación
- La capa 5: los filtros y la búsqueda en la URL
- Proyecto: manejar todo el estado de Mercado
Dudas frecuentes
Lo que suele preguntarse
Sin límite. Es una guía gratuita: entras cuando quieras, las veces que quieras.
No. Los módulos están ordenados de menos a más, pero puedes saltar al que necesites. Tu progreso se guarda por lección.
Lo que haga falta está en «Qué necesitas traer», arriba. Si no aparece nada ahí, puedes empezar desde cero.
En el grupo de WhatsApp del Club, y cada quince días hay un live con un instructor donde se resuelven dudas en vivo.
Sí. Al terminar todas las lecciones se emite automáticamente, con un código verificable que puedes compartir en LinkedIn.
Empieza cuando quieras
Lo que dicen los estudiantes
Estas reseñas son de estudiantes inscritos que completaron al menos el 50% del curso. Moderamos las reseñas solo por motivos de contenido (spam, lenguaje ofensivo, datos personales), nunca por ser críticas o negativas.
Aún no hay reseñas aprobadas.
¡Sé el primero en compartir tu experiencia!