首页 > 解决方案 > 如何从 Angular 9 中的 url 中删除哈希,并将浏览器中的 url 更新为当前 url

问题描述

这个问题和这个问题不一样。

我需要知道如何从 url 中删除哈希并更新浏览器中的 url。

@NgModule({
  imports: [RouterModule.forRoot(routes, { anchorScrolling: 'enabled', useHash: false, scrollPositionRestoration:'enabled' })],


"@angular/router": "~9.1.2",

当前行为:

浏览器中的网址:/something

用户点击: <a [routerLink]="['/home']" fragment="home" >Home</a>

浏览器导航到:/home

浏览器中的网址:/home#home

页面滚动到:#home

使用上述问题的答案时的行为:

浏览器中的网址:/something

用户点击: <a [routerLink]="['/home']" fragment="home" skipLocationChange>Home</a>

浏览器导航到:/home

浏览器中的网址:/something

页面滚动到:#home

期望的行为:

浏览器中的网址:/something

用户点击: <a [routerLink]="['/home']" fragment="home" >Home</a>

浏览器导航到:/home

Url in browser: /home // 期望的行为是当前 url 在浏览器中显示,没有哈希。

页面滚动到:#home

标签: angularangular-routingangular9

解决方案


https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question

为了节省您和我们的时间,我们将系统地关闭所有请求一般支持的问题,并将人们重定向到 Stack Overflow。

这个问题的答案是: 不要使用不受支持的框架。


推荐阅读