2017-04-26 2 views
1

Ich möchte wissen, wie man ein Modul importiert, ohne dass es Vorrang vor dem übergeordneten Modul hat. Ich versuche zu verstehen, warum mein importiertes Modul die Eingangsmodule des übergeordneten Moduls überschreibt. Ich importiere die QuotesModule in meine CompaniesModule, so dass die Komponenten für meine CompaniesModule verfügbar sind. Wenn die QuotesModule importiert wird, wie hier gezeigt:Angular 2 + Lazyloaded Modul wird durch ein importiertes Modul überschrieben

CompaniesModule (lazyloaded)

const ROUTES: Routes = [ 
    {path: '', component: CompaniesComponent} 
]; 

@NgModule({ 
    declarations: [ 
     CreateCompanyComponent, 
     CompaniesComponent 
    ], 
    providers: [ 
    ], 
    imports: [ 
     QuotesModule, 
     FormsModule, 
     ReactiveFormsModule, 
     GlobalModule, 
     CommonModule, 
     RouterModule.forChild(ROUTES) 
    ], 
    exports: [ 
    ], 
    schemas: [ 
     CUSTOM_ELEMENTS_SCHEMA 
    ], 
    entryComponents: [ 
     CompaniesComponent 
    ] 

}) 

... und ich versuche zu CompaniesComponent Route, die QuotesModule Eintrag Komponente zu navigieren löst statt. Jede Einsicht würde sehr geschätzt werden!

Hier ist meine QuotesModule Routen und NgModule:

const ROUTES: Routes = [ 
    {path: '', component: QuotesComponent} 
]; 

@NgModule({ 
    declarations: [ 
     QuotesComponent 
    ], 
    providers: [ 
    ], 
    imports: [ 
     CommonModule, 
     GlobalModule, 
     RouterModule.forChild(ROUTES) 
    ], 
    exports: [ 
    ] 

}) 
+0

Ich könnte falsch liegen, aber das klingt wie ein Router-Problem. Wenn die Komponente anderweitig korrekt importiert wird (faul oder nicht), sollte alles gut sein. –

+0

Sie haben Recht! Ich habe bemerkt, dass das Import-Modul einen identischen Router-Pfad teilt. Und sie zu ändern, behebt das Problem. Ich werde die Frage bearbeiten, um sie in das andere Modul und die Routen einzufügen. – Rex

+0

und danke :) – Rex

Antwort

1

ich als Antwort schreiben werde dann (basierend auf obigen Ausführungen) ...

... das Problem klingt wie Ihr Router, nicht die faule geladene Module (je nachdem, ob diese Module in der Tat Laden ist korrekt) . Überprüfen Sie, ob sich die untergeordneten Routen im Vergleich zu den Hauptrouten nicht gegenseitig überschreiben.

Und froh, dass ich geholfen habe. Das Aufspüren von Routerproblemen kann ein Bär sein.

0

Das Problem der Routing war. Ich hatte verschiedene Pfade verwendet, um meine QuotesModule unabhängig von der CompanyModule zu laden und beim Importieren, QuotesModule die Routen übereinzustimmen und dann die importierenden Module Routen überschrieben.

Verwandte Themen