如果父组件的路径为空,则Angular 2命名路由器不起作用

Abh*_*wal 5 angular angular-router

这是我的路线配置

{
    path: 'home',
    component: HomepageComponent,
    children: [
        {
            path: 'enquiry',
            component: EnquiryComponent,
            outlet: 'suboutlet'
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

这适用于:

this.router.navigate(['/home', {outlets: {suboutlet: ['enquiry']}}]);
Run Code Online (Sandbox Code Playgroud)

但如果我的父路径是这样的空白:

{
    path: '', // <-- This is blank now
    component: HomepageComponent,
    children: [
        {
            path: 'enquiry',
            component: EnquiryComponent,
            outlet: 'suboutlet'
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

以下都不适用:

this.router.navigate(['', {outlets: {suboutlet: ['enquiry']}}]);
this.router.navigate(['/', {outlets: {suboutlet: ['enquiry']}}]);
this.router.navigate([{outlets: {suboutlet: ['enquiry']}}]);
Run Code Online (Sandbox Code Playgroud)

错误:错误:无法匹配任何路由.网址细分:'查询'

我需要这个路由器配置,因为我的嵌套命名出口位于主页组件中,我不希望用/ home作为前缀,只是为了使这个工作

任何帮助都非常感谢.


这是我上面的代码的plunker正在工作

https://plnkr.co/edit/SZhu8LxHiSKNxX3JQ22N

我不知道为什么下面的一个不起作用

https://plnkr.co/edit/jvhkN77wH6ZePErwDvT3