2014-03-27 70 views
0

當我在angularJs控制器使用下面的代碼反應應該是一個數組,而不是一個對象或別的東西restangular

var baseAccount = Restangular.all('account'); 
    $scope.submit = function(){  
     baseAccount.getList().then(function(accounts) { 
      $scope.datas = accounts ; 
     }); 

我得到以下錯誤,爲的GetList 的反應應該是一個數組而不是對象或其他東西在restangular

有沒有解決方案?

+1

什麼從服務器樣子的反應如何? –

+0

從服務器端我返回followind數據。 $ names = array(「name」=>「ravindra」,「email」=>「[email protected]」); echo json_encode($ names); –

+0

在瀏覽器中打開開發工具並查看網絡請求。看看反應實際上是什麼樣子。 –

回答

3

你打電話getList.,它預計服務器的數據是一個數組(一旦它被解析成一個真正的JS對象)。你的回答不是數組。

您需要修改服務器端的代碼與數組迴應或更改角碼要求一個單一的資源,而不是他們的數組:

var baseAccount = Restangular.all('account'); 
$scope.submit = function() { 
    baseAccount.get().then(function (account) { 
     $scope.data = account; // Only one account 
    }); 
}; 
+0

是的,我已經改變了服務器端的代碼,並按預期工作:)。 感謝您的幫助 –

+0

您也可以通知Restangular哪些​​對象屬性包含您打算從以下位置檢索列表的數組:https://github.com/mgonto/restangular#my-response-is-actually-wrapped-with -some-metadata-how-do-i-get-the-data-in-case 這裏還有另外一個例子:http://stackoverflow.com/questions/22012655/restangular-getlist-with-object-含包埋陣列 –

相關問題