2017-05-16 2 views
2

Bisher habe ich keine funktionierende Demo mit Lazy Loading in einem named Router Outlet e.x gefunden. <router-outlet name="view"></router-outlet>. Ich habe einen Plunkr gemacht, um einen Weg zu finden, um es ohne Erfolg arbeiten zu lassen. Jede Hilfe würde sehr geschätzt werden.Lazy Laden eines named Router Outlet

https://plnkr.co/edit/EW3PZUMC63euf2QYxtW5?p=preview

In dem obigen Beispiel Ansicht1, View2 und View3 sind lazy loaded in der Standard-Router-Steckdose. View3_1 und View3_2 werden ohne Erfolg in den genannten Router-Outlet geladen.

+0

Aktualisiert Ihre plunkr zu https://plnr.co/edit/bhPyG3?p=preview, da es einen Fehler hatte – Shivi

+0

Mögliche Duplikate von [Angular 4 Lazy Laden mit named Router-Outlet funktioniert nicht] (https://stackoverflow.com/questions/ 47482230/angular-4-lazy-loading-mit-named-rou ter-outlet-not-working) –

Antwort

0

Ich hatte versucht, es zu tun, aber wir bekam:

Versprechen Ablehnung: Ungültige Konfiguration der Route ‚yourRouteName‘: eine componentless Route festgelegt haben kann, einen benannte Ausgang nicht

Wenn wir den Namen verwenden router-outlet es braucht komponente, kein modul. Ich denke, es ist unmöglich = (Aber ich es so brauchen

0

Es gibt eine Proxy-Komponente Abhilfe:. Wir haben diese

{ 
     path: 'me', 
     outlet: 'hub', 
     component: ProxyRouteComponent, 
     children: [ 
      { 
       path: '', 
       loadChildren: 'hub#HubModule', 
      }, 
     ], 
    }, 

Wo Proxy-Route-Komponente ist einfach

import { Component } from '@angular/core'; 

@Component({ 
    selector: 'b-proxy-route', 
    template: '<router-outlet></router-outlet>', 
}) 
export class ProxyRouteComponent { 
} 
+0

Das scheint lebensfähig. Irgendwelche Einsichten/Vorbehalte nach diesem Schritt? Würde gerne einen Plünderer sehen. – nullsteph

Verwandte Themen