Winkel-4: Wie zu injizieren Richtlinien erklärt in der Bootstrap-Modul(appmodule), die in anderen Modulen importiert werden, in das appmodule?
Habe ich eine hightlight-Richtlinie wie in der angular-Dokumentation, aber ich bin nicht in der Lage, es zu benutzen, die in anderen Modulen importiert werden, in das appmodule.
Das folgende ist meine appmodule.ts-Datei:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { RouterModule } from '@angular/router';
import { AppComponent } from './app.component';
import { PrimaryNavigationComponent } from './components/primary-navigation/primary-navigation.component';
import { DashboardModule } from 'app/features/dashboard/dashboard.module';
import { ServicesModule } from 'app/features/services/services.module';
import { NotificationsModule } from 'app/features/notifications/notifications.module';
import { AboutModule } from 'app/features/about/about.module';
import { RedirectModule } from 'app/features/redirect/redirect.module';
import { HighlightDirective } from 'app/directives/highlight/highlight.directive';
@NgModule({
declarations: [
AppComponent,
PrimaryNavigationComponent,
HighlightDirective
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
DashboardModule,
ServicesModule,
NotificationsModule,
AboutModule,
RedirectModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
Bitte helfen Sie mir mit diesem Problem.
- wenn Sie möchten, verwenden Sie eine Richtlinie, die innerhalb einer anderen Richtlinie, die Sie benötigen, zu erstellen, ein shared-Modul, die Importe / Exporte der Richtlinie. Dies sollte aus dem Modul importiert, das für den Einsatz in der Richtlinie.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Winkel Modul-system können auf den ersten Blick verwirrend, ist aber ziemlich einfach, sobald Sie sich daran gewöhnen.
Gibt es einige einfache Regeln zu befolgen:
Und das ist, was du hast falsch - Sie haben den export von HighlightDirective aus dem Modul, in der Sie deklariert, um es zu verwenden, die in anderen Modulen.
Jedoch in Ihrem Fall, Ihr AppModule bereits eine Abhängigkeit von den feature-Modulen (Sie importieren Sie Ihre feature-Module zB DashboardModule, ServicesModule etc in Ihrem AppModule). Winkel-nicht wie zirkuläre Referenzen, so dass Sie nicht haben, können Sie Ihre AppModule importieren einer feature-Modul und dann das feature-Modul umdrehen und versuchen zu importieren AppModule.
Also die Allgemeine Lösung für dein Problem ist das verschieben der declarables (Komponenten/Richtlinien/Rohre), die Sie verwenden möchten, die über mehrere Module zu einem neuen Modul (z.B. SharedModule), exportieren declarables aus, dass SharedModule und dann haben Sie Ihre AppModule und feature-Module importieren, die SharedModule.
Müssen Sie exportieren Sie die Richtlinie in Modul