Angular2中的子路由

时间:2016-05-23 07:00:27

标签: angular angular2-routing angular2-template

我有一个主要组件有路线:

@Routes([
            {
                path     : "/auth/login",
                component: AuthComponent
            },
            {
                path     : "/",
                component: DefaultComponent
            }
        ])

DefaultComponent路由:

@Routes([
            {
                path     : "/",
                component: LevelListComponent
            },
            {
                path     : "/levels/:id/add",
                component: LevelListComponent
            },
            {
                path     : "/levels/:id/edit",
                component: LevelListComponent
            },
            {
                path     : "/scripts",
                component: ScriptListComponent
            }
        ])

当我尝试导航到/ scripts时,我看到一个错误:

app.js:44947 EXCEPTION: Error: Uncaught (in promise): Cannot match any routes. Current segment: 'undefined'. Available routes: ['/auth/login', '/']

在测试版中,我可以做到:

{
   path: "/...",
   component: SomeComponent
}

但是现在它没有用。

如何在模板中创建动态路线?

<a [routerLink]="menuItem.url">

1 个答案:

答案 0 :(得分:2)

重新排序DefaultComponent中的路线,以便更具体的路线首先出现,而不那么具体的路线最后出现(/成为最后一个路线)。这是一个已知问题,可能会在下一个版本中修复。