Saltar al contenido

Lección 3 de 16 · Lectura y práctica

Server Components y Client Components en profundidad

Server Components y Client Components en profundidad Esta leccion pertenece al curso Desarrollo Web Full Stack con Next.js y esta pensada para que avances con criterio profesional, no solo con teoria. Primero entiende el.

Del concepto a la práctica

Taller de esta lección

La frontera servidor-cliente debe seguir la interacción, no el tamaño visual del componente. Una lista de reseñas puede ser de servidor porque solo presenta datos; un selector de valoración necesita estado y eventos en el cliente. Separarlos reduce JavaScript enviado y hace visible dónde se toman decisiones.

Ejemplo resuelto

tsx
// components/Selector.tsx
'use client';
import { useState } from 'react';
export function Selector() {
  const [valor, setValor] = useState(1);
  return <button onClick={() => setValor(actual => actual + 1)}>Cantidad: {valor}</button>;
}

La página de servidor importa Selector, pero conserva la consulta y el texto estático.

Un Client Component puede producir HTML inicial en el servidor y luego hidratarse; “cliente” identifica la frontera de interacción y dependencias, no significa ausencia de HTML inicial. Los secretos y conexiones de base de datos se quedan en módulos de servidor y no se pasan por props al selector.

Pruébalo

  1. Lista tres datos que solo se leen.

  2. Separa un único control que cambie en pantalla.

  3. Pasa por props solo valores serializables.

  4. Prueba el control con dos clics.

Comprueba tu resultado

Error frecuente: usar useState en un componente de servidor. Corrección: crea una frontera cliente explícita y pequeña.

Ejercicio: inicia el selector en 1 y pulsa dos veces; debe mostrar Cantidad: 3, mientras el nombre del producto sigue procediendo del componente de servidor.

Servidor que produce HTML y navegador que lo muestra y gestiona la interacción; claves sensibles permanecen en el servidor.
CursaloMapa de práctica
Dónde se ejecuta cada parte

El servidor puede obtener datos y producir el HTML inicial. El navegador muestra el resultado y ejecuta las interacciones que necesitan estado local. Mantén las claves sensibles en el servidor y define qué parte se ejecuta en cada entorno.

Ver la infografía en tamaño completo ↗
Fuentes para profundizar

Server Components y Client Components en profundidad

Esta leccion pertenece al curso Desarrollo Web Full Stack con Next.js y esta pensada para que avances con criterio profesional, no solo con teoria. Primero entiende el concepto, despues aplicalo en una situacion concreta y finalmente deja evidencia de lo que aprendiste.

Objetivo practico

Al terminar, deberias poder explicar el tema con tus palabras, reconocer cuando usarlo y construir una version simple que sirva como base para un proyecto real.

Pasos recomendados

  1. Lee el concepto y escribi una definicion breve.
  2. Identifica un caso de uso laboral donde aparezca este problema.
  3. Construye un ejemplo pequeno y documenta las decisiones.
  4. Compara tu resultado con el checklist de la leccion.

Sigue con Desarrollo Web Full Stack con Next.js

Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.

Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.

01 / ELEGIR UNA RUTA

El próximo paso

Aprende IA mientras construyes algo que sí necesitas.

Empieza por el curso inicial o explora el catálogo para encontrar una práctica alineada con tu trabajo.