React Router desde cero: rutas base en una SPA

Configura navegación cliente en React con React Router y entiende la diferencia real entre enlaces SPA y recarga completa del navegador.

Una SPA necesita navegar entre vistas sin recargar toda la página, manteniendo estado de aplicación y experiencia fluida.

React Router resuelve esto mapeando rutas a componentes y gestionando historial con la API del navegador.

La diferencia clave frente a etiquetas `<a>` tradicionales es que los `Link` de React Router evitan refresh completo.

Con una base sólida de routing podrás escalar hacia rutas dinámicas, layouts anidados y protección por permisos.

  • Cada ruta representa un estado navegable de la app.
  • Piensa cada pantalla como una ruta estable: `/`, `/productos`, `/contacto`.
  • El router decide qué componente renderizar según la URL actual.
  • Este modelo mejora claridad arquitectónica en apps con muchas vistas.
  • Define router y provider en la entrada de la aplicación.

Concepto base: URL -> componente

Cada ruta representa un estado navegable de la app.

Piensa cada pantalla como una ruta estable: `/`, `/productos`, `/contacto`.

El router decide qué componente renderizar según la URL actual.

Este modelo mejora claridad arquitectónica en apps con muchas vistas.

Setup mínimo recomendado

Define router y provider en la entrada de la aplicación.

Navegación con Link

Usa `Link` para moverte sin recargar el documento completo.

`Link` actualiza la URL y renderiza la vista objetivo manteniendo contexto de la SPA.

Con `<a href>` provocarías navegación tradicional con recarga completa.

En productos reales esto impacta percepción de velocidad y continuidad de flujo.

React
15

React Router desde cero: rutas base en una SPA

Configura navegación cliente en React con React Router y entiende la diferencia real entre enlaces SPA y recarga completa del navegador.

Código del tema: <Route path="/dashboard" element={<Dashboard />} />

📘 Teoría

Concepto base: URL -> componente

Cada ruta representa un estado navegable de la app.

1

Piensa cada pantalla como una ruta estable: `/`, `/productos`, `/contacto`.

2

El router decide qué componente renderizar según la URL actual.

3

Este modelo mejora claridad arquitectónica en apps con muchas vistas.

Setup mínimo recomendado

Define router y provider en la entrada de la aplicación.

🧪 Aprende probando

Ejemplo Ejemplo: menú de navegación en SPA Navegación básica entre rutas con `Link`.

🏁 Retos

Reto Reto: añade una ruta `/blog` Completa la configuración para incluir la pantalla Blog.

🧰 Recursos

Test

Comprueba tus conocimientos con un test sobre React.

Test de React

¿Qué es esto?

Soy Cristian Eslava y a veces hago webs para procrastinar yo y vosotros. culTest

La hice en febrero de 2026 para facilitar el aprendizaje de mis alumnos. La idea es aprender desarrollo web practicando y que el proyecto siga creciendo con nuevos temas, tests y retos.

Está inspirada en MDN, W3Schools, CodePen, Manz y muchos otros sitios de documentación sobre desarrollo web. Quería combinar teoría útil, ejemplos ejecutables, retos y el sistema de tests que ya tenía en culTest. culTest

Si te gustó, si no te gustó o si quieres escribirme, puedes hacerlo en cristianeslava@gmail.com