簡體   English   中英

角度2中的http調用結果

[英]Results of http call in angular 2

角度2完全陌生,並且在捕獲http調用的結果時遇到問題。 調用很簡單,僅返回帶有成功/失敗和消息的json。 我已經開始對這些調用使用promise,並且可以在瀏覽器中顯示結果,但是無法記錄或警告結果。 讓我知道您是否需要更多信息。

服務:

deleteTsUser(params){
    var url = this.userDeleteUrl + '?' + params.toString();

    return this.http.get(url)
      .toPromise()
      .then(this.extractData)
      .catch(this.handleError);
}

零件:

var result = this._tsUserService.deleteTsUser(params)
   .then(
     r => {
      this.result.result = r.result,
      this.result.messages = r.messages
     }
   );

console.log('RES: ' + this.result.result)

模板:

{{ result.result }} :: {{ result.messages }}

結果在模板中正確顯示,但是console.log消息僅記錄“ Res:” ...為什么不起作用? 我錯過了一些非常基本的東西,對吧? 副詞

因為:

var result = this._tsUserService.deleteTsUser(params)
   .then(
     r => {
      this.result.result = r.result,
      this.result.messages = r.messages
     }
   );

是異步操作。 deleteTsUser方法完成時,結果將在then回調中准備好。

var result = this._tsUserService.deleteTsUser(params)
   .then(
     r => {
      this.result.result = r.result;
      this.result.messages = r.messages;
      console.log('RES: ' + this.result.result);
     }
   );

將記錄結果。

我建議您閱讀: 如何返回異步調用的響應? 關於javascript的異步行為

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM