2017-03-01 2 views
1

Ich habe einen Fehler, wenn ich einen Dienst zu importieren, aber ich habe keine Ahnung, warumAngular 2 - Was ist ein DI-Fehler?

import { CDService } from "../../services/definition"; 

constructor(
    private toastyCommunicationService: ToastyCommunicationService, 
    private CDService : CDService, 
    private SharedService: SharedService, 
    private DatePipe: DatePipe 
) { } 

ich meinen Dienst litteraly leer gemacht habe, weil ich so frustriert mit dem Fehler war und nicht zu wissen, was es verursacht wurde.

export class CDService { 

} 

Jetzt erhalte ich die Fehler

EXCEPTION: Uncaught (in promise): Error: DI Error 
Error: DI Error 

Ich habe 2 Fragen:

1) Was zum Teufel ein DI Fehler ist?

2) Wie kann ich diesen Fehler beheben?

+0

Es ist Dependency Injection Fehler. Bitte poste mehr Code. –

+0

@ IgorJanković welcher Code? Welche Abhängigkeiten kann es brauchen? Es gibt keine einzige Codezeile im Service – Nicolas

Antwort

4

Es ist ein Abhängigkeitsfehler. Ich glaube, Sie fehlen @Injectable() Dekorateur:

@Injectable() // this line 
export class CDService { 

} 

Edit:

Haben Sie CDService in NgModule hinzugefügt?

+0

Ich habe das OP aktualisiert – Nicolas

+0

Haben Sie CDService in NgModule hinzugefügt? –

+0

ah Ich habe es völlig vergessen, das zu überprüfen! Danke! – Nicolas

1

Stellen Sie sicher, dass Ihr Service injizierbar ist, indem Sie @Injectable() verwenden. Auf diese Weise versteht eckle nicht nur eine Schreibschriftklasse, sondern auch einen eckigen Dienst.

+0

gibt es andere Möglichkeiten, aber damit zu beginnen ist der beste Weg –

4

Achten Sie darauf, diesen Service Ihres Moduls hinzugefügt providers

Verwandte Themen