2017-10-16 5 views
0

„URL-Segment nicht gefunden“ bearbeiten es funktioniert, wenn der „namen“ aus meinem verschachtelten Ausgang zu entfernen und die „Ausgang“ Eigenschaft aus dem Route-Modul zu entfernen. Ist es zwingend notwendig, eine unbenannte Steckdose zu haben, bevor Sie benannte benutzen?Angular 4-Routing: verschachtelte Kind Ansichten:

Die folgende RouterMOdule Config ist in Ort:

const appRoutes: Routes = [ 

    // Public area: login (default) 
    { path: '', component: LandingPageComponent, 
    canActivate: [AuthAutoRedirectService], 
    children: [ 
     { path: '',  outlet: 'active-box', component: LoginComponent } 
    ] 
    }, 

    // Secure area 
    { path: 'secure', component: SecureAreaComponent, 
    canActivate: [AuthGuardService], 
    data: { roles: ['user'] }, 
    children: [ 

     // Dashboard (default) 
     { path: '',    outlet: 'main-content', component: DashboardComponent }, 

     // Resolutions 
     { path: 'resolutions', outlet: 'main-content', component: ResolutionsComponent }, 

     // Documents 
     { path: 'documents', outlet: 'main-content', component: DocumentsComponent }, 
    ] 
    }, 

]; 

@NgModule({ 
    imports:[ 
    RouterModule.forRoot(appRoutes) 
    ], 
    exports:[ 
    RouterModule // configured router module 
    ] 
}) 
  • router-outlet: zeigt die Anmeldeseite oder den sicheren Bereich Verbleib | - router-outlet name="main-content" zeigt die ausgewählte Seite im gesicherten Bereich

    • localhost:4200/ richtig die Login-Seite
    • localhost:4200/secure richtig dient dem sicheren Bereich, zeigt das "Dashboard" als Haupt-Seite

dient der Problem tritt auf, wenn versucht wird, auf ein anderes Kind des gesicherten Bereichs zuzugreifen:

core.es5.js:1020 ERROR Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'secure/documents' 
Error: Cannot match any routes. URL Segment: 'secure/documents' 

Was könnte die Ursache sein?

Dank ...

Antwort

0

Ok, das erklärt, dass: https://github.com/angular/angular/issues/14830

Sie den Auslass auf einer Vorlage mit dem Namen Primär haben muss (wenn Sie es sein wird, den Namen nicht angeben Primär als Standard). Benannte Steckdosen sind Hilfskräfte.

Der Ausgang mit dem Namen ist ein "Hilfsanschluss". Benötigt mindestens eine "primäre" (auch "unbenannte") Steckdose.

Verwandte Themen