Ich habe meine Hauptmodul wie dieser, wo ich die grundlegenden Bibliotheken importieren:Angular 2 Imports
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { MaterialModule } from '@angular/material';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { MapModule } from './map/map.module';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
MapModule,
MaterialModule.forRoot()
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
Meine Frage ist, wenn ich eine neue Module innerhalb der App dh Kartenmodul muss ich alles neu importieren diese Bibliotheken zu diesem Modul. Ich hatte den Eindruck, dass, wenn ich die Bibliotheken auf dem Modul importiere, es unter untergeordneten Modulen funktionieren würde.
Aber in meinem Kartenmodul bekomme ich Fehler wie.
Can't bind to 'ngClass' since it isn't a known property of 'div'.
Mein Aktueller mapModule sieht aus wie
import { NgModule } from '@angular/core';
import { MapComponent } from './map.component';
import { MapMenuComponent } from './map-menu/map-menu.component';
import { MapControlsComponent } from './map-controls/map-controls.component';
import { MapService } from './map.service';
@NgModule({
imports: [],
exports: [],
declarations: [MapMenuComponent, MapControlsComponent, MapComponent],
providers: [MapService],
})
export class MapModule { }
Muß ich die MaterialModule zu reimportieren, Formulare usw. in dem Modul wieder für die Komponenten in diesem Modul zu arbeiten?
Ah gotcha, und ich Bündler erraten wie webpack sind schlau genug, diese Module wie Material und Formulare nur einmal im Bundle und nicht mehrfach zu platzieren. – StevieB
Danke Mann für die gut erklärte Antwort, ich fand dieses Szenario in ihrer Dokumentation fehlt. – StevieB
@StevieB, sicher, Bündler oder andere Lader wie Systemjs wird das Modul nur einmal importieren. Ja, dieser Teil ist in den Dokumenten unklar. Was noch schlimmer ist, sie enthalten keine Quellen im npm-Paket, also müssen Sie nach github gehen, um zu überprüfen, welche Module Deklarationen haben. –