Angular routerLink 相对于可变路由参数
Angular routerLink relative to a variable route parameter
我有一个 Angular 应用程序,其中根目录是一个可变路由参数:
/:demo_profile/(etc).
我不能使用相对路径,因为我的 routerLink 可以从不同的地方获得 components/routes。
如何设置一个 routerLink
相对于我网站根目录的目标,后跟这个参数?即
/SomeRoute/home
我的路线:
const routes: Routes = [
{
path: ':demo_profile',
children: [
{
path: '',
redirectTo: 'home',
pathMatch: 'full'
},
{
path: 'home',
component: HomeComponent,
},
{
path: 'cards',
component: CardsComponent,
},
{
path: 'card/:id',
component: CardComponent,
},
{
path: 'help',
component: HelpComponent,
},
{
path: '**',
redirectTo: ':demo_profile',
}
]
},
{
path: '\**',
redirectTo: '/DGInsureCo/home',
}
];
虽然不理想,但解决方案包括获取当前 URL 路径,然后按照以下内容重建路由器 link:
模板中的路由器链接:
<a routerLink="/{{demo_profile}}/home">Home</a>
然后使用 activatedRoute
:
引用 this.demo_profile
this.route.params.subscribe( params =>
this.demo_profile = params['demo_profile']
)
或:
activatedRoute.snapshot.url[0].path
我有一个 Angular 应用程序,其中根目录是一个可变路由参数:
/:demo_profile/(etc).
我不能使用相对路径,因为我的 routerLink 可以从不同的地方获得 components/routes。
如何设置一个 routerLink
相对于我网站根目录的目标,后跟这个参数?即
/SomeRoute/home
我的路线:
const routes: Routes = [
{
path: ':demo_profile',
children: [
{
path: '',
redirectTo: 'home',
pathMatch: 'full'
},
{
path: 'home',
component: HomeComponent,
},
{
path: 'cards',
component: CardsComponent,
},
{
path: 'card/:id',
component: CardComponent,
},
{
path: 'help',
component: HelpComponent,
},
{
path: '**',
redirectTo: ':demo_profile',
}
]
},
{
path: '\**',
redirectTo: '/DGInsureCo/home',
}
];
虽然不理想,但解决方案包括获取当前 URL 路径,然后按照以下内容重建路由器 link:
模板中的路由器链接:
<a routerLink="/{{demo_profile}}/home">Home</a>
然后使用 activatedRoute
:
this.demo_profile
this.route.params.subscribe( params =>
this.demo_profile = params['demo_profile']
)
或:
activatedRoute.snapshot.url[0].path