2016-08-05 59 views
0

Controller.js:

service.getUsers(params).$promise.then(function(response) { 
    var data = response; 
    $scope.users = data.resources; 
    $scope.totalItems = data.totalResults; 
}); 

Service.js:

return $resource('/Users', {}, { 
      getUsers: { 
       method: 'GET', 
       headers: {'segment' : 'computedSegment'}, 
       isArray: true, 
       transformResponse: function(data, header){ 
        var wrapped = angular.fromJson(data); 
        angular.forEach(wrapped.resources, function(item, idx) { 

         wrapped.resources[idx] = item; 
        }); 

        var deffered = $q.defer(); 
        deffered.resolve(wrapped); 



        return deffered.promise; 
       } 
      }}); 

我收到的問題是,雖然請求轉到服務器,我收到一個響應,數據被正確處理了,那麼,那麼「函數將永遠不會執行來設置$ scope變量。

有沒有人有想法?

回答

0

我猜你忘了在getUsers方法後使用query()方法。我認爲你不需要在transformResponse方法中使用promise。您可以檢查answers

+0

究竟在哪裏說你應該使用查詢方法? –

+0

like; service.getUsers(params).query()。$ promise –

+0

TypeError:UsersService.getUsers(...)。query是不是函數是我收到一旦我將代碼更改爲:UsersService.getUsers(params).query( )$ promise.then(功能(響應)。 –