Für eine Website mit Authentifizierung in Angular2 möchte ich eine Komponente des Authentifizierungs-Submoduls in der Haupt-App-Komponente verwenden. Ich erhalte jedoch weiterhin den folgenden Fehler:
app/app.component.ts(3,10): error TS2305: Module '"<dir>/app/auth/auth.module"' has no exported member 'SigninComponent'.
auch nach dem Exportieren von SigninComponent.
Die Projektordner-Struktur ist wie folgt:
app / auth / auth.module.ts:
%Vor%app / auth / komponenten / signin.component.ts:
%Vor%app / app.component.ts:
%Vor%app / app.module.ts:
%Vor%Sie brauchen die Linie nicht:
%Vor% in Ihrer app.component.ts
, da Sie die AuthModule
bereits in Ihrer app.module.ts
enthalten haben. AutModule
import ist ausreichend, um Ihre Komponente in der App zu verwenden.
Der Fehler, den Sie erhalten, ist ein TypeScript-Fehler, kein angularer Fehler. Er gibt an, dass kein exportierter Member existiert, da er nach einer gültigen EC6-Syntax für den Export und nicht nach einem eckigen Modulexport sucht. Diese Zeile würde also in Ihrem app.component.ts
funktionieren:
Arbeiten mit Atom (1.21.1 ia32) ... ich habe den gleichen Fehler, obwohl ich einen Verweis auf meine Pipe in der app.module.ts und in den Deklarationen innerhalb von app.module.ts hinzugefügt
Lösung war, meine Knoteninstanz neu zu starten ... die Webseite zu stoppen und dann ng serve wieder zu machen ... zu localhost: 4200 funktionierte wie ein Zauber nach diesem Neustart
Auch einige der häufigsten Fälle:
Vielleicht exportieren Sie die Klasse mit dem Präfix "default" wie folgt
%Vor%entfernen Sie es einfach
%Vor%Das ist das Problem für mich lösen
Dieser Fehler kann auch auftreten, wenn sich Ihr Schnittstellenname von der Datei unterscheidet, in der er enthalten ist. Weitere Informationen zu ES6-Modulen finden Sie hier. Wenn der SignInComponent
eine Schnittstelle war, wie in meinem Fall, dann
sollte in einer Datei namens SignInComponent.ts
sein.
Tags und Links angular typescript angular2-modules