Die Eigenschaft 'subscribe' existiert nicht für den Typ 'void'. Angular 2 asp.net Kern

9

Ich erhalte den folgenden Fehler, wenn ich versuche, subscribe zu verwenden. Ich hatte das gleiche Problem mit .map, aber ich löste dies mit dem Ersetzen der folgenden Datei Ссылка

Ich habe Typescript auf 1.8.6 aktualisiert und Visual Studio 2015 aktualisiert, um 3 zu aktualisieren.

Ich habe keine Ahnung, wie ich dieses Problem beheben kann oder wenn ich etwas falsch mache, habe ich auch

hinzugefügt %Vor%

zu den Bootstrap- und app.component-Klassen und immer noch der gleiche Fehler.

Servicecode:

%Vor%

Klasse, in der Dienst verwendet wird:

%Vor%

package.json-Datei:

%Vor%     
user5049376 23.06.2016, 11:58
quelle

2 Antworten

27

Sie haben vergessen, in Ihre get() zurückzukehren. Verkapsle auch nicht den Körper von Lambda-Funktionen, ohne etwas zurückzugeben. Eine implizite Rückgabe findet statt, wenn Sie nur response => response.json() ausführen. Ansonsten musst du es so schreiben: response => { return response.json(); } .

Hier ist eine verbesserte Version Ihrer Methode:

%Vor%

Lassen Sie auch die this.http = http; in Ihrem Konstruktor weg. Das Schreiben von public oder private vor dem Konstruktorargument fügt es bereits als Klassenmitglied hinzu.

    
rinukkusu 23.06.2016, 12:03
quelle
0

Ihre get () - Funktion gibt das Observable nicht zurück - & gt; nichts zu abonnieren. Probieren Sie:

%Vor%     
bene 23.06.2016 12:03
quelle

Tags und Links