Uso de Hash Router en Aplicaciones Web con React Router DOM
Clase 5 de 30 • Curso de React.js: Navegación con React Router
Contenido del curso
- 4

Instalación de React Router DOM 6 en un proyecto React
11:18 - 5

Uso de Hash Router en Aplicaciones Web con React Router DOM
07:26 - 6

Creación de Rutas Dinámicas con React Router DOM 6
10:41 - 7

Navegación en React Router: Uso de Link y NavLink
13:18 - 8

Rutas dinámicas con React Router DOM y useParams
15:36 - 9

Uso de useNavigate en React Router DOM para navegación dinámica
08:57 - 10

Uso de Outlet y Nested Routes en React Router DOM 6
06:56
- 11

Autenticación y Autorización en Apps con React Router y Hooks
23:48 - 12

Control de Acceso en Menú con Autenticación React
09:50 - 13

Protección de Rutas con React Router y Hooks
13:46 - 14

Roles y permisos en aplicaciones web: Autenticación y autorización
11:57 - 15

Retos avanzados en React: manejo de estado y composición de componentes
08:21 - 16

Mejorando la Redirección Post-Login en Aplicaciones Web
03:42 - 17

Roles y Permisos Avanzados en React Router v6
04:57
- 18

Migración de Todo Machine a React Router 6
11:33 - 19

Organización de carpetas y rutas en React con React Router DOM 6
18:40 - 20

Maquetación de Botón Editar en Lista de Tareas con React
12:19 - 21

Generación de IDs únicos para gestionar tareas en React
15:23 - 22

Migración de modales a rutas en React: implementación práctica
17:37 - 23

Editar ToDos en React con Custom Hook y URL Parameters
14:03 - 24

Mejora de la Experiencia del Usuario al Editar To Do's en React
21:55 - 25

Implementación de React Router en Proyectos Legacy
11:07
¿Qué tipos de router ofrece React Router DOM?
En el fascinante mundo del desarrollo web, React Router DOM nos ofrece tres tipos de routers: browser router, hash router y memory router. Cada uno de ellos tiene un propósito específico y una manera particular de gestionar la navegación, lo que influye en cómo se estructuran y gestionan las rutas en diferentes escenarios.
¿Cómo funciona el browser router?
El browser router sigue la forma normal de navegación que encontramos en la mayoría de las páginas web. Si alguna vez has navegado por sitios como Platzi o Netflix, habrás notado que las URLs están estructuradas con barras inclinadas (slashes) para separar rutas como /home, /blog o /contact. Este tipo de router muestra la ruta completa en la barra de direcciones y es ideal para aplicaciones web que requieren rutas visibles y manejables directamente por el navegador.
- Ventajas: Permite una navegación más natural y amigable para el usuario, imitando el comportamiento común de los navegadores.
- Desventajas: No es recomendable para todas las situaciones, especialmente para aplicaciones hosteadas sin control sobre el backend.
¿Qué es el hash router?
El hash router utiliza el símbolo de hash ('#') después del dominio en la URL para gestionar las rutas. Así, una URL podría verse como example.com/#/ruta/blog. Este método es particularmente útil cuando se desea implementar rutas en una sola página (Single Page Application) sin intervención del servidor para cada cambio de ruta.
- Ventajas: Permite mantener la misma página HTML al cambiar las rutas, lo que es perfecto para aplicaciones hospedadas en sitios como GitHub Pages.
- Desventajas: La URL puede parecer menos profesional o estética debido a la inclusión del símbolo '#'.
¿Para qué se utiliza el memory router?
El memory router es ideal para aplicaciones que no dependen de URLs navegables, como las aplicaciones móviles. Su funcionamiento se basa en mantener un array en memoria que rastrea las rutas, sin mostrar ninguna URL específica al usuario.
- Ventajas: Perfecto para entornos que no dependen de URLs, como aplicaciones móviles o entornos de pruebas.
- Desventajas: No apto para aplicaciones web tradicionales que requieren URLs definidas en el navegador.
¿Cuándo usar hash router sobre browser router?
La elección entre hash router y browser router radica en el entorno de despliegue de tu aplicación. Si el proyecto se aloja en un entorno como GitHub Pages, donde no puedes controlar el backend, el uso de hash router se convierte en una solución imprescindible.
¿Por qué elegir hash router en GitHub Pages?
GitHub Pages no permite modificaciones en el servidor para gestionar una aplicación con un browser router; cualquier ruta no encontrada directamente en el repositorio resultará en un error 404. Utilizando el hash router, se puede "engañar" al sistema para que siempre rinda el mismo index.html, independientemente de la ruta siguiente al '#'.
- Ventajas: Permite tener una aplicación completamente funcional en GitHub Pages, gracias a que todas las rutas internas se gestionan en el frontend.
- Alternativas: Si tienes control sobre el backend, puedes configurar tu servidor para gestionar rutas de aplicación única que siempre devuelvan el mismo HTML principal.
¡Continúa aprendiendo!
El mundo del routing en React puede parecer complejo, pero con una comprensión sólida de los conceptos, estarás mejor preparado para enfrentarte a cualquier desafío de desarrollo web. Los diferentes tipos de router tienen sus propios casos de uso y ventajas, por lo que seleccionar el adecuado para tu proyecto es clave. Ahora que manejas estos conceptos, ¡lánzate a experimentar y a desarrollar aplicaciones que luzcan y funcionen impecablemente!