“无组件路由不能具有指定的插座集”

时间:2017-02-16 20:43:54

标签: angular angular2-routing

在我的ng2应用程序中,我有以下路线:

const modalRoutes: Routes = [{
    path: 'modal_1',
    component: SomeModalComponent,
    outlet: 'modal',
    children: [
        {
            path: 'step_one',
            component: OneSubmodalComponent,
            outlet: 'submodal'
        },
        {
            path: 'step_two',
            component: AnotherSubmodalComponent,
            outlet: 'submodal'
        },
        {
            path: '',
            redirectTo: 'step_one',
            outlet: 'submodal',
            pathMatch: 'full'
        }
    ]
}];

我有一个未命名的主页内容路由器插座,此路由描述了一个模式的路由,该模式路由到指定的插座modal,其本身包含一个命名的插座submodal

从Angular 2.2.4开始,这个工作正常,但在更新到2.3.0+后,我现在得到了错误Invalid configuration of route 'modal_1/': a componentless route cannot have a named outlet set。我可以看到这是因为重定向路由没有定义组件,但它只重定向到已定义的step_one。关于我的路由设计有什么不对吗?

1 个答案:

答案 0 :(得分:0)

找出问题 - 通过上述路线,我会得到像这样的路径 /main(modal:modal_1/(submodal:step_1)),现在似乎无法正常工作。现在简化/main(modal:modal_1/step_1)的路径可以使其正常工作。然后我的路线变成:

const modalRoutes: Routes = [{
    path: 'modal_1',
    component: SomeModalComponent,
    outlet: 'modal',
    children: [
        {
            path: 'step_one',
            component: OneSubmodalComponent
        },
        {
            path: 'step_two',
            component: AnotherSubmodalComponent
        },
        {
            path: '',
            redirectTo: 'step_one',
            pathMatch: 'full'
        }
    ]
}];