我有以下路线-
const routes: Routes = [
{
path: '',
component: ParentComponent,
children: [
{
path: ':id',
component: ChildComponent,
},
]
}
];
在父级构造函数中的,我想导航到一些id,例如'test'。 我尝试过这个
constructor(private router: Router) {
this.router.navigate(['child']);
}
还有这个
constructor(private router: Router) {
this.router.navigate(['/child']);
}
还有这个
constructor(private router: Router) {
this.router.navigate(['./child']);
}
还有这个
constructor(private router: Router) {
this.router.navigate(['../child']);
}
我的网址是-https://docs.microsoft.com/en-us/iis/configuration/system.webserver/httpredirect/。
但是所有这些选项我都转到http://localhost:4200/parent而不是http://localhost:4200/child
知道为什么吗?我该如何相对于父母?
答案 0 :(得分:3)
因为navigate
采用绝对路径。
您必须明确地告诉它是相对的:
constructor(
private router: Router,
private route: ActivatedRoute
) {
this.router.navigate(['child'], { relativeTo: this.route });
}