Cómo implementar la navegación basada en rutas en React

| Última modificación: 21 de noviembre de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

En el emocionante mundo del desarrollo web, la navegación basada en rutas en React se ha convertido en un componente esencial para crear aplicaciones web dinámicas y receptivas. Si estás construyendo una aplicación en React y te preguntas cómo implementar la navegación basada en rutas, estás en el lugar correcto. En este artículo, veremos los conceptos fundamentales de la navegación basada en rutas en React, usando la librería react-router-dom. ¡Prepárate para aprender a definir rutas, gestionar rutas dinámicas y mucho más!

Introducción a la navegación basada en rutas en React

La navegación basada en rutas en React es esencial para crear aplicaciones web que sean fáciles de navegar y comprender para los usuarios. En lugar de cargar páginas web individuales cada vez que un usuario hace clic en un enlace, la navegación basada en rutas permite cargar diferentes componentes de React en función de la URL actual del navegador. Esto crea una experiencia de usuario más fluida y rápida.

Usando react-router-dom para la navegación basada en rutas en React

Para implementar la navegación basada en rutas en React, KeepCoding recomienda utilizar la librería react-router-dom. Esta librería proporciona las herramientas necesarias para definir rutas y gestionar la navegación en tu aplicación.

Para comenzar, asegúrate de tener react-router-dom instalado en tu proyecto. Puedes hacerlo ejecutando el siguiente comando:

npm install react-router-dom

Una vez tengas react-router-dom instalado, puedes comenzar a configurar la navegación basada en rutas en tu aplicación React.

Definir rutas con Route y Switch

El componente Switch se utiliza para agrupar varias rutas y garantizar que solo se muestre una de ellas a la vez. Dentro de Switch, puedes utilizar el componente Route para definir rutas específicas y los componentes que deben renderizarse cuando se accede a esas rutas.

import { BrowserRouter as Router, Switch, Route } from 'react-router-dom'; 
function App() { 
return ( 
<Router>
 <Switch> 
<Route exact path="/" component={Inicio} /> 
<Route path="/acerca-de" component={AcercaDe} />
 <Route path="/contacto" component={Contacto} />
 </Switch>
 </Router> 
); 
}

En este ejemplo, hemos definido tres rutas utilizando el componente Route. La propiedad exact se utiliza en la ruta de inicio para asegurarse de que solo se coincida con la URL exacta.

Rutas dinámicas con parámetros

En muchas aplicaciones, es necesario trabajar con rutas dinámicas que incluyan parámetros variables, como identificadores de productos o nombres de usuario. Puedes definir rutas dinámicas utilizando parámetros en react-router-dom.

<Route path="/producto/:id" component={DetalleProducto} />
 <Route path="/usuario/:username" component={PerfilUsuario} />

En estos ejemplos, :id y :username son marcadores de posición para valores que pueden cambiar en la URL. Puedes acceder a estos valores en tus componentes utilizando useParams de react-router-dom.

Gestión de la ruta actual y el historial de navegación

react-router-dom proporciona una serie de utilidades para gestionar la ruta actual y el historial de navegación. Puedes utilizar useHistory para acceder al historial de navegación y useLocation para obtener información sobre la ruta actual.

import { useHistory, useLocation } from 'react-router-dom'; 
function MiComponente() { 
const history = useHistory(); 
const location = useLocation(); 
// Accede al historial de navegación y la ruta actual 
console.log(history); 
console.log(location); 
return ( 
// Tu contenido aquí 
); 
}

Proteger rutas con token de acceso

En muchas aplicaciones web, especialmente aquellas que gestionan información confidencial o funciones importantes, es esencial proteger ciertas rutas para garantizar que solo los usuarios autenticados tengan acceso a ellas. Imagina que estás construyendo una aplicación de redes sociales donde los usuarios pueden publicar contenido personal. Quieres asegurarte de que solo los usuarios registrados puedan acceder a su perfil y realizar publicaciones.

Para lograr esto, puedes implementar un sistema de autenticación que emite un token de acceso cuando un usuario inicia sesión con éxito. Este token de acceso es un fragmento de información cifrada que se almacena en el lado del cliente, generalmente en las cookies o el almacenamiento local del navegador.

En resumen, la navegación basada en rutas en React es un componente fundamental para crear aplicaciones web interactivas y dinámicas. Utilizando react-router-dom, puedes definir rutas, gestionar rutas dinámicas, acceder al historial de navegación y proteger rutas con tokens de acceso.

Sigue aprendiendo más en KeepCoding

Si estás interesado en aprender más sobre la navegación basada en rutas en React, el desarrollo web y convertirte en un profesional del sector tecnológico, considera unirte al Desarrollo Web Full Stack Bootcamp de KeepCoding. Al completar el bootcamp, estarás equipado con las habilidades y el conocimiento requeridos para ingresar a la industria de la tecnología, que ofrece salarios competitivos y gran estabilidad y condiciones laborales. ¡No te pierdas esta oportunidad de cambiar tu vida y embarcarte en una emocionante carrera en el mundo del desarrollo web!

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado