Как настроить маршрутизатор Angular2 перенаправить меня на маршрут по умолчанию (или любой другой), если я перейду на несуществующий маршрут?
Angular2 резервный маршрут
Ответ 1
Я нашел это решение
{ component: HomeComponent, path: "", pathMatch: "full" },
{ component: LoginComponent, path: "/login" },
{ component: NotFoundComponent, path: "**" }
Ответ 2
Для перенаправления маршрута по умолчанию (/
) см. Route
api docs. Просто установите для параметра по умолчанию маршрут useAsDefault
значение true
Например, если у вас есть маршрут, определенный как:
@RouteConfig([ {path: '/home', component: HomeCmp, name: 'Home', useAsDefault: true} ])
маршрут /
будет перенаправлен на /home
Как упоминалось OP в его ответе, для перенаправления всех маршрутов undefined на определенный маршрут используйте
@RouteConfig([ /*...,*/ {path: '/**', redirectTo: ['Home']} ])
Ответ 3
Маршрутизатор изменен на новую версию, и теперь пути назад назад являются userd таким образом. см. Angular 2 маршрут
{ path: '', redirectTo: '/member/dashboard', terminal: true },
{
path: 'member',
component: MemberMainComponent,
canActivate: [AuthGuard],
children: [
{
path: 'dashboard',
component: DashboardComponent
}
]
},
{ path: '**', component: DashboardComponent }
Ответ 4
Решение Владо Тесановича работало для меня, но запись NotFoundComponent должна быть последней в appRoutes.