0
typescriptサービスコンポーネントのhttp.postコールからの応答をangle2コンポーネントに渡して、フロントエンドに表示できるようにしようとしています。以下は私のservice.tsとcomponent.tsのコード構造です。http.postからangular2のcomponent.tsに応答を渡す
getSearchProfileResponse(body) {
let headers = new Headers({'Content-Type': 'application/json'});
let options = new RequestOptions({headers: headers});
return this.http.post(this._url, body, options)
.map((response:Response) => {
console.log(JSON.stringify(response));
JSON.stringify(response);
})
.catch((error) => {
console.log("error is "+ error);
return Observable.throw(error);
});
}
getProfile() {
this.spinnerService.show();
this.searchProfileRequest = _.cloneDeep(this.searchKey);
this.searchProfileService.getSearchProfileResponse(this.searchProfileRequest)
.subscribe(
searchProfileResponse => {
this.searchResult = searchProfileResponse;
console.log("response in component is "+ searchProfileResponse); // this is displayed as undefined
console.log("search result is "+ this.searchResult);
this.spinnerService.hide();
this.showProfiles(this.searchResult);
},
error => {
console.log(error);
this.spinnerService.hide();
this.showError();
}
);
}
私の質問は、コントローラのデータがgetSearchProfileResponse(body)メソッドの応答で渡されているのがわかりました。しかし、応答はgetProfile()メソッドの応答に "未定義"として表示されています。どんな入力も感謝しています!
ありがとうございました!それはうまくいった。 –