[英]Angular 5 routerLink absolute path with #
我有一个需要在新标签页中打开的网址。 不幸的是,angular 生成的这个 url 没有 #。 我们目前正在使用
<!-- HTML -->
<a title="Edit" [routerLink] = "['/object/object2', value]"> {{value}} </a>
// Angular AppModule
RouterModule.forRoot(AppRoutes, { useHash: true, onSameUrlNavigation:'reload' })
url 生成http://localhost:4200/object/object2/123456 。
我需要在新选项卡中打开它的 URL http://localhost:4200/#/object/object2/123456 。
我做了很多研究,所以这主要是为了解决另一个解决方案。
angular中有两种路由方案,一种是基于Hash的,一种是基于window.history的。
# 不包括在内,因为默认情况下您使用的是 historyL 路由方案。 如果需要hash,官方文档给出了定义:
您可以通过在对象中提供 useHash: true 作为 AppModule 中 RouterModule.forRoot() 的第二个参数来使用 HashLocationStrategy
@NgModule({
imports: [
BrowserModule,
FormsModule,
RouterModule.forRoot(routes, { useHash: true }) // .../#/crisis-center/
],
declarations: [
AppComponent,
PageNotFoundComponent
],
providers: [
],
bootstrap: [ AppComponent ]
})
export class AppModule { }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.