2017-08-21 6 views
0

Ich baue eine app mit kantigem 4 und Angular Material, jede Werkstoff Richtlinie mich sein Modul separat zu importieren erfordert ..Importieren eine Reihe von Modulen im Angular

Zum Beispiel, ich bin der Aufbau eine Navigationsleiste, dies ist, wie die nav.module.ts beginnt aussehen:

import {NgModule} from '@angular/core'; 
import {CommonModule} from '@angular/common'; 
import {NavComponent} from './nav.component'; 
import { AngularFontAwesomeModule } from 'angular-font-awesome/angular-font-awesome'; 
import { MdInputModule } from '@angular/material'; 
import { MdMenuModule } from '@angular/material'; 
import {MdButtonModule} from '@angular/material'; 
import { FlexLayoutModule } from '@angular/flex-layout'; 
import {HttpClientModule, HttpClient} from '@angular/common/http'; 
import {TranslateModule, TranslateLoader} from '@ngx-translate/core'; 
import {TranslateHttpLoader} from '@ngx-translate/http-loader'; 

@NgModule({ 
imports: [ 
    CommonModule, 
    AngularFontAwesomeModule, 
    MdInputModule, 
    MdMenuModule, 
    MdButtonModule, 
    FlexLayoutModule, 
    HttpClientModule, 

    .... 

Es gibt nur 3 Material Module jetzt, muß ich später mehr hinzuzufügen und außer Material, gibt es auch andere Module, die importiert werden müssen ...

Gerade angefangen, von zu bewegen AngularJS to Angular4 es fühlt sich an, als würde ich etwas falsch machen ... Gibt es eine bessere Möglichkeit, alle Module zu importieren? Ist mein Ansatz zur Strukturierung der App falsch?

+1

ein separates Modul erstellen, das das erforderliche scharfkantige Material Module importiert. Dieses Modul kann in andere Module importiert werden. Werfen Sie einen Blick auf das 'MyMaterialModule' in dieser Antwort: https://Stackoverflow.com/a/43700125/6942210 –

Antwort

3

Sie können ein "freigegebenes" Modul erstellen, das jedes der benötigten Material Design-Module exportiert. Dann können Sie einfach das "geteilte" Modul in Ihre anderen Module importieren, die sie benötigen. Hier

ein Beispiel:

enter image description here

In diesem Bild, das ich ein gemeinsames Modul haben, das CommonModule und FormsModule exportiert. Das ProductModule importiert dann das SharedModule, um alle von CommonModule und FormsModule bereitgestellten Funktionen zu erhalten.

Ich habe ein YouTube-Video dazu hier: https://www.youtube.com/watch?v=ntJ-P-Cvo7o

+0

Was halten Sie für eine bessere Methode - die Verwendung großer/langer geteilter Module, die viel importieren oder verwenden? viele kleinere? Und ich muss dir für das Video danken, machte eine Menge Dinge für mich klar, nicht nur die Importe :) –

+1

Gern geschehen! Und es kommt darauf an. Wenn Sie mehrere Module haben, die eine große Anzahl von Modulen von Drittanbietern benötigen, ist es sinnvoll, sie alle in einem großen gemeinsam genutzten Modul zu speichern. Dann sind sie leicht zu finden und zu pflegen. Wenn andererseits einige Module unterschiedliche Teilmengen benötigen, kann die Trennung sinnvoll sein. – DeborahK

Verwandte Themen