如果我转到不存在的路线,如何配置Angular2路由器将我重定向到默认路由(或任何其他路由?)
答案 0 :(得分:22)
我找到了这个解决方案
{ component: HomeComponent, path: "", pathMatch: "full" },
{ component: LoginComponent, path: "/login" },
{ component: NotFoundComponent, path: "**" }
答案 1 :(得分:10)
要重定向默认路由(/
),请参阅Route
api docs。只需将默认路由的useAsDefault
参数设置为true
例如,如果您的路线定义如下:
@RouteConfig([ {path: '/home', component: HomeCmp, name: 'Home', useAsDefault: true} ])
/
路由将重新路由到/home
正如OP在他的回答中所提到的,要将所有未定义的路由重定向到某个路由,请使用
@RouteConfig([ /*...,*/ {path: '/**', redirectTo: ['Home']} ])
答案 2 :(得分:4)
路由器已更改为新版本,现在可以通过这种方式回退路由。 参考:Angular 2 route
{ path: '', redirectTo: '/member/dashboard', terminal: true },
{
path: 'member',
component: MemberMainComponent,
canActivate: [AuthGuard],
children: [
{
path: 'dashboard',
component: DashboardComponent
}
]
},
{ path: '**', component: DashboardComponent }