Como alterar a URL na barra de endereços sem recarregar a página?
Olá a todos! Sou um desenvolvedor front-end iniciante e me deparei com a seguinte tarefa: preciso alterar a URL na barra de endereços do navegador quando o usuário clica em links dentro do site, mas a página não deve recarregar.
Por exemplo, tenho uma aplicação de página única (SPA) com uma lista de artigos. Quando o usuário clica no título de um artigo, quero que a URL mude de `/` para `/article/123`, mas o conteúdo seja carregado via AJAX sem recarregar completamente. Atualmente, estou usando links normais com `href`, e o navegador simplesmente recarrega a página. Tentei usar `window.location.href = '/article/123'`, mas isso também causa recarregamento.
Aqui está um exemplo do meu código atual:
```javascript
// Isso não funciona como esperado
document.querySelector('.article-link').addEventListener('click', function(e) {
e.preventDefault();
window.location.href = '/article/123'; // Ainda recarrega a página
// Carregamento de conteúdo via fetch...
});
```
Como alterar a URL corretamente sem recarregar?