In meinem Code beobachtbare Ursache Fehlern zurückgegeben habe ich benutzerdefinierte post-Methode, die die HTTP-Klasse von Winkel 2.enVerwendung von Versprechen in Methode
post(url: string, body: string, options?: RequestOptionsArgs): Observable<any> {
if (!this._gs.externalRequest) {
let that = this;
this._gs.getToken().then((token) => {
if (token) {
options = this.prepareOptions(options, token);
}
return that.sendPostRequest(url, body, options);
});
}
else {
this._gs.externalRequest = false;
return this.sendPostRequest(url, body, options);
}
}
In obiger Code post-Methode Extents gibt eine beobachtbare während des Verfahrens dies. _gs.getToken() in If-Bedingung liest Token aus dem lokalen Speicher ein asynchroner Aufruf und gibt eine Zusage zurück.
Obwohl die Zusammenstellung einen Fehler doenst erzeugen, aber, wenn ich Zugriff auf
this.http.post ('/ api/myFormHandler', this.form.value) .subscribe ((Daten) => { });
class MyFormComponent- inline template:16:29 caused by: Cannot read property 'subscribe' of undefined
Übrigens müssen Sie 'that = this' nicht verwenden, wenn Sie fette Pfeilfunktionen verwenden. – hgoebl
'if (! ...) {...}' gibt nichts zurück. – hgoebl