Como alterar a URL na barra de endereços do navegador sem recarregar a página?
Olá a todos! Sou um desenvolvedor front-end iniciante e me deparei com o seguinte problema.
Tenho uma aplicação de página única (SPA) em JavaScript puro. O usuário clica em links e o conteúdo da página muda dinamicamente (via fetch ou apenas ocultando/mostrando blocos). Tudo funciona perfeitamente, mas há um grande problema: o endereço na barra do navegador permanece o mesmo.
Por exemplo, o usuário clicou em "Sobre nós", o conteúdo foi carregado, mas a URL ainda é `https://meusite.com/`. Por causa disso:
1. O botão "Voltar" do navegador não funciona — ele simplesmente volta para o site anterior, e não para a "página" anterior dentro da minha aplicação.
2. Não é possível enviar a um amigo um link para uma seção específica — ele sempre verá a página principal.
Tentei alterar `window.location.href`, mas isso causa um recarregamento completo da página com todos os estilos e scripts.
Aqui está um exemplo do meu código:
```javascript
// Maneira ruim — recarrega a página
function goToAbout() {
window.location.href = '/about';
}
// Maneira boa