2017-04-01 3 views
0

registrieren Ich benutze angular2 und ng2-bootstrap.ng2-bootstrap kann nicht alarm, datepicker in angular2

In meinem module.ts, ich habe wie diese erklärt

import { Ng2BootstrapModule, AlertModule } from 'ng2-bootstrap'; 
imports:  [ BrowserModule, 
    ..., 
    Ng2BootstrapModule.forRoot(), 
    AlertModule.forRoot(), 
    ... ] 

In meiner Komponentenvorlage ich so erklärt haben:

Testalarm

Mein systemjs.config.js:

map:{ 
    ..., 
    'moment': 'npm:moment', 
    'ng2-bootstrap': 'npm:ng2-bootstrap', 
    ... 
}, 
packages: { 
    ..., 
    'moment': { main: 'moment.js', defaultExtension: 'js' }, 
    'ng2-bootstrap': { format: 'cjs', main: 'bundles/ng2-bootstrap.umd.js', defaultExtension: 'js' }, 
    ... 
} 

Aber ich habe diesen Fehler:

Unhandled Promise rejection: Template parse errors: 
'alert' is not a known element: 
1. If 'alert' is an Angular component, then verify that it is part of this module. 
2. To allow any element add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component. 

Was fehlt mir? Bitte helfen Sie mir dabei. Ich verbrachte mehrere Stunden damit, eine Lösung zu finden, konnte es aber nicht.

Vielen Dank im Voraus.

+0

Ng2BootstrapModule kommen aus NG2-Bootstrap, die deklariert wird in module.ts –

Antwort

0

Wenn Sie picker und Alarm benötigen, importieren Sie sie

import { DatepickerModule, AlertModule } from 'ng2-bootstrap'; 
imports:  [ BrowserModule, 
    ..., 
    DatepickerModule.forRoot(), 
    AlertModule.forRoot(), 

Was könnte passieren: Angular erfordert Import von Modulen für das Rendern in entsprechenden Submodule verwendet

+0

Schließlich löse ich mich auf. Ich hatte 'AppModule.ts' ist Haupt, und' QuestionTagModule.ts' ist Untermodul. Ich vermisste Import 'AlertModule' in Untermoduldatei. Ich importiere 'Ng2BootstrapModule.forRoot()' nur im Hauptmodul. Das ist meine dumme Sache. Danke Jungs sowieso. –

+0

scheint, muss ich dies "in entsprechenden Submodulen" umformulieren – valorkin

+0

Bitte ich kann dich nicht verstehen und ich habe das gleiche Problem. Also muss ich AlertModule.forRoot() 'in appmodule importieren und den gleichen String' import AlertModule.forRoot() 'im Modul der Komponente, die ich verwenden möchte, importieren? Warum zweimal? Wenn es ForRoot() ist, sollte es in Ordnung sein, wenn ich es nur in Eltern-App-Modul importieren, oder? –