Cómo cambiar la URL en la barra de direcciones del navegador sin recargar la página
¡Hola a todos! Soy un desarrollador frontend principiante y me encontré con este problema.
Tengo una aplicación de una sola página (SPA) en JavaScript puro. El usuario hace clic en enlaces y el contenido de la página cambia dinámicamente (a través de fetch o simplemente ocultando/mostrando bloques). Todo funciona perfectamente, pero hay un gran problema: la dirección en la barra del navegador permanece igual.
Por ejemplo, el usuario hizo clic en "Acerca de", el contenido se cargó, pero la URL sigue siendo `https://mysite.com/`. Debido a esto:
1. El botón "Atrás" del navegador no funciona — simplemente va al sitio anterior, no a la "página" anterior dentro de mi aplicación.
2. No se puede enviar a un amigo un enlace a una sección específica — siempre verá la página principal.
Intenté cambiar `window.location.href`, pero esto provoca una recarga completa de la página con todos los estilos y scripts.
Aquí hay un ejemplo de mi código:
```javascript
// Mal método — recarga la página
function goToAbout() {
window.location.href = '/about';
}
// Buen método
No answers yet.
Inicia sesión para dejar una respuesta
Blogs
Cómo conseguir trabajo como desarrollador PHP: consejos y currículum para principiantes
Java Stream.collect en Kotlin: guía completa con ejemplos
WebSocket en C++: aplicaciones en tiempo real de nivel avanzado
Reflexión e introspección en Rust: cómo mirar dentro del código