Wie kann ich den Angular2-Router so konfigurieren, dass er mich zu einer Standardroute (oder einer anderen) umleitet, wenn ich zu einer nicht vorhandenen Route gehe?

24
Vlado Tesanovic 4 Jän. 2016 im 19:18

3 Antworten

Beste Antwort

Ich habe diese Lösung gefunden

{ component: HomeComponent, path: "", pathMatch: "full" },
{ component: LoginComponent, path: "/login" },
{ component: NotFoundComponent, path: "**" }
29
Vlado Tesanovic 21 Nov. 2016 im 09:38

Informationen zum Umleiten der Standardroute (/) finden Sie unter Route API-Dokumente. Setzen Sie einfach den useAsDefault Parameter der Standardroute auf true

Wenn Sie beispielsweise eine Route wie folgt definiert haben:

@RouteConfig([ {path: '/home', component: HomeCmp, name: 'Home', useAsDefault: true} ])

Die / Route wird zu /home umgeleitet

Wie vom OP in seiner Antwort erwähnt, verwenden Sie, um alle undefinierten Routen auf eine bestimmte Route umzuleiten

@RouteConfig([ /*...,*/ {path: '/**', redirectTo: ['Home']} ])
12
Ionut Costica 4 Jän. 2016 im 19:55

Der Router wird auf eine neue Version geändert und jetzt werden auf diese Weise Fallback-Routen verwendet. Siehe: Angular 2-Route

{ path: '', redirectTo: '/member/dashboard', terminal: true },
{
  path: 'member',
  component: MemberMainComponent,
  canActivate: [AuthGuard],
  children: [
    {
      path: 'dashboard',
      component: DashboardComponent
    }
  ]
},
{ path: '**', component: DashboardComponent }
5
fuma 14 März 2017 im 10:44