2016-12-05 100 views
2

我想看看我的回覆在angularJS $http調用中看起來像。但我不知道如何在那裏停止執行? (在成功響應後)

我試圖在那個地方放置斷點並且執行不停止。 我甚至試圖把debugger指令放在那裏,但它並沒有停止。 這隻發生在$ http調用(異步調用)時,否則中斷點會停止執行。

我在代碼中標記了註釋,我想停止執行程序。

代碼:

$scope.OpenModal = function (event) { 
    $("#myModal").css("display", "block"); 
    var parent_TD = $(event.currentTarget).parent(); 
    var cMEST_CDO2 = parent_TD.find("#inputDeliveryID").val(); 
    var res = null; 
    $http({ 
     method: "POST", 
     url: $scope.UrlGetDataFromCAORAM, 
     data: { cMEST_CDO2: cMEST_CDO2 } 
    }).then(function success(response) { 

     /* I would like to stop the program in this point */ 

     res = response.data; 
     $scope.inputCustomerData = res.ACCO_NME + " " + res.ACCO_ADD + " " + res.ACCO_ZIP + " " + res.ACCO_CIT + " " + res.ACCO_VAT; 
     $scope.ORAC_DDE = res.ORAC_DDE; 
     $scope.ORAC_NUM = res.ORAC_NUM; 
     $scope.ArticleName = res.MERC_NME + " (" + MERC_CDO1 + ")"; 

    }, function failure() { 
     alert("Error!"); 
    }) 

    } 

這可能嗎?

+1

你知道什麼是xhr要求嗎? – madalinivascu

+1

你知道console.log(response)是什麼嗎? – madalinivascu

+1

使用chrome dev工具並在那裏添加中斷點以查看值。此外,您可以在網絡選項卡中看到響應。 https://developer.chrome.com/devtools – Badr

回答

2

如果您想在該點停止執行,請在瀏覽器的「開發人員工具」中使用斷點。然而,如果你只是想看看HTTP調用的響應,那麼你可以在瀏覽器的開發工具的網絡選項卡中查看(假設你的瀏覽器具有這種功能 - 所有流行的瀏覽器都可以)和觀察對您的呼叫的迴應。

最後,您可以將響應(即與console.log(response))一起記錄到響應回調中的控制檯。

希望有幫助!

+0

你知道爲什麼執行不停止,如果我用$ http調用設置斷點?帶有$ http響應的Onyl,斷點不會停止執行。 – FrenkyB

+0

您是否嘗試過在瀏覽器的開發工具中設置斷點?如果是這樣,你可以通過截圖瞭解你做過的事情嗎? –

2

假設你success function不會被擊中,另一種方法可以嘗試,除了放置一個斷點是將debugger;關鍵字的代碼中,在您要開始調試這樣的地步:

}).then(function success(response) { 

    /* I would like to stop the program in this point */ 
    debugger; 
    ... 

然後確保開發人員工具已打開(瀏覽器中的F12)並運行該功能。