Elegir entre Single Page Application y Server Side Rendering define el rendimiento, la experiencia del usuario y el SEO de tus proyectos en React. Aquí verás cómo decidir con claridad y, además, configurar el enrutamiento con React Router DOM y Vite para iniciar rápido con TypeScript y buenas prácticas.
¿Qué diferencias hay entre single page application y server side rendering?
Las dos aproximaciones cambian cómo se sirve el HTML y cómo el usuario percibe la carga e interacción. Entenderlas permite tomar decisiones informadas al crear aplicaciones con React.
Single Page Application: carga todo el HTML inicialmente. Puede haber un pequeño retraso al empezar, pero ofrece navegación muy fluida entre vistas porque ya está todo cargado.
Server Side Rendering: sirve el HTML desde el servidor por cada página. La primera carga es más rápida. Cada cambio de vista vuelve a cargar contenido. Mejora el SEO porque los motores de búsqueda pueden leer el HTML inicial.
Elección: para SSR puedes usar Next.js con rutas incluidas. Para SPA, trabajar con React Router DOM es directo y flexible.
¿Cómo iniciar un proyecto con Vite y React Router DOM?
El flujo es simple: crear el proyecto con Vite, elegir React con TypeScript, instalar dependencias, correr en localhost e instalar react-router-dom. Luego, abrir en Visual Studio Code y verificar en package.json.
¿Qué comandos usar con npm y vite?
npm create vite@latest nombre-de-tu-app
# Selecciona React y TypeScript.npminstallnpm run dev
npminstall react-router-dom
Abre la URL de localhost que muestra la consola.
Confirma que la aplicación corre.
¿Cómo instalar y verificar react-router-dom en package.json?
Abre package.json y verifica que react-router-dom esté en dependencies.
Si quieres fijar versión, quita el “gorrito” ^ delante de la versión.
Con esto, reinstalará siempre la misma versión al volver a instalar el proyecto.
¿Cómo configurar rutas básicas con BrowserRouter, Routes, Route y Link?
Primero, limpia App.tsx (remueve estilos y contenido por defecto). Luego, configura el enrutador en main con BrowserRouter y define rutas y navegación con Routes, Route y Link. Usa componentes simples: Home y About.