Angular 9路由器redirectTo ::同时在浏览器栏中保留原始URL

时间:2020-09-16 16:30:02

标签: angular url angular-routing

当前,我正在通过重定向一条路由来呼叫3个不同的出口来创建应用程序。 我这样称呼路线:

this.router.navigateByUrl(`admin/bp/${route.params.uuid}/masterdata`)

然后在我的应用程序路由模块中将其重定向如下:

{ path: ':uuid/masterdata', redirectTo: '/adminpage(actionbar:standardactionbar//menu:hierarchysidebar/:uuid//items:masterdataC/:uuid)', pathMatch: 'prefix'}

这使我可以更新3个不同的路由器插座,每个插座具有3个不同的组件。

{ path: 'masterdataC/:uuid', component: AdminMasterDataComponent, outlet: 'items' },
{ path: 'hierarchysidebar/:uuid', component: HierarchicalSidebarComponent, outlet: 'menu'}
{ path: 'standardactionbar', component: ActionBarComponent, outlet: 'actionbar' }

我现在面临的问题是重定向后URL会更改并显示

http://localhost:4200/#/adminpage(actionbar:standardactionbar//menu:hierarchysidebar/UUID//items:masterdataC/UUID)

当我从路由器使用NavigationEnd时,始终能够在重定向之前检索URL,这需要构建导航面包屑。不幸的是,当我实际使用router.navigate到某个地方时,NavigationEnd只能向我显示原始URL。例如,在刷新页面时,它不起作用。

有没有办法在路由器重定向之前将原始URL保留在浏览器栏中?我一直在整个网络上搜索另一种方法来完成此操作,但没有成功。

谢谢!

0 个答案:

没有答案
相关问题