2017-01-05 6 views
3

Ich habe ein lazy loaded Modul, das standardmäßig LazyLoadedComponent lädt, wenn ich zu /lazy gehe. Bis jetzt ist es in Ordnung.Angular2 router - Hilfsroute

Diese Komponente enthält 2 Router-Ausgang:

<router-outlet></router-outlet> 
<router-outlet name="aux"></router-outlet> 

Und das Modul verfügt über die folgenden Routen:

const routes = [ 
    { 
    path: '', 
    component: LazyLoadedComponent, 
    children: [ 
     { 
     path: '', 
     component: NonAuxComponent 
     }, 
     { 
     path: '', 
     component: AuxComponent, 
     outlet: 'aux' 
     } 
    ] 
    } 
]; 

Als ich nach /lazy gehe ich die wie erwartet geladen 3-Komponenten zu tun haben. Aber wenn ich den Pfad ändern möchten, dass die AuxComponent wie anzuzeigen:

{ 
    path: 'auxpath', 
    component: AuxComponent, 
    outlet: 'aux' 
} 

Und ich versuche zu /lazy(aux:auxpath) gehen es nicht funktioniert.

Ich habe auch versucht, die URL-schlagen die routerLink wie die Verwendung von:

<a [routerLink]="[{ outlets: { aux: 'auxpath' } }]">Load an auxiliary route</a> 

Aber es ist auch nicht arbeiten.

enter image description here

Ist das ein Fehler mit dem Router? Ist es nur, dass ich hier etwas verpasse?

Sie können die Plunkr überprüfen, um Ihre eigenen Tests zu machen.

+0

Hallo Maxime. Ich habe kürzlich mit Outlets gespielt und es scheint zu funktionieren. Weißt du, ob dein Problem gelöst wurde? – AngularChef

+0

@AngularFrance so für es scheint nicht zu lösen. Ich werde einen weiteren Versuch später diese Woche oder nächsten geben, wenn ich etwas Zeit finden kann :) Danke für den Kontakt – Maxime

Antwort

3

Nachdem ich viele Dinge ausprobiert hatte, endete ich mit der Schlussfolgerung, dass es sich wahrscheinlich um einen Fehler in @angular/router handelte.

Ich habe eine Github issue erstellt, und es stellt sich heraus, dass one was already existing seit August.