2013-10-21 75 views
1

我有這樣的代碼:當我嘗試調試代碼,似乎在Restangular陷入承諾

var me = Restangular.one('object', 1).get({params:params}); 

me.then(function (data) { 

    $scope.me = data; 
    $scope.loadsubobject(); 
}); 


$scope.loadsubobject = function() { 

    $scope.me.getList("subobject") 
    .then(function(subobject) { 
    //the code never gets here 
      console.log('loaded subobjects', subobjects); 
      $scope.subobjects = $scope.subobjects.concat(subobject.results); 

      if (data.next){ 
       $scope.next = data.next; 
      } 
     },function(response){ 
     console.log('Error with response:', response.status) 
     }); 

在調用$scope.me.getList("subobject")它返回到第一then決不讓到第二屆時,後一個實際處理我需要的子對象。

任何線索回撥地獄嗎?

我確認服務器確實返回了正確的答案 我該如何解決這個問題?很高興與此

+0

我不是超級熟悉restangular,但我很確定當你在'me.then()'處理程序中聲明'$ scope.me = data'時,你不會在'me'上具有'getList'函數。 –

+0

也這麼想。但我確實得到了這個功能。 – alonisser

+0

我猜Restangular包裝的結果,這很酷。因此,負載運行,但「那麼」成功永遠不會觸發,錯誤處理程序永遠不會觸發? –

回答

2

幫助竟然是一個完全不同的問題,JSON返回不「平」的,所以我需要使用responseExtractoras explained here