Avatar ·

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