Javascript Restangular getList不返回任何内容

Javascript Restangular getList不返回任何内容,javascript,angularjs,service,restangular,Javascript,Angularjs,Service,Restangular,我是个新来的有棱角有棱角的人也许你能帮我 为什么这个代码可以工作 tunariAppApp.controller('ProductListCtrl', 函数($scope,restanglar){ restanglar.all('products').getList().then(函数(结果){ $scope.products=结果; }); } );getList()不返回数据,它返回http请求的承诺对象,因为请求是异步获取的,以便不阻止js执行 angular工厂的一种常见做法是回报承诺

我是个新来的有棱角有棱角的人也许你能帮我

为什么这个代码可以工作

tunariAppApp.controller('ProductListCtrl',
函数($scope,restanglar){
restanglar.all('products').getList().then(函数(结果){
$scope.products=结果;
});
}
);
getList()
不返回数据,它返回http请求的承诺对象,因为请求是异步获取的,以便不阻止js执行

angular工厂的一种常见做法是回报承诺本身:

// fire restangular api call and return promise in factory
tunariAppApp.factory('productData', ['Restangular', function(Restangular){
    var Product = Restangular.all('products');
    return{
        products: function() { return Product.getList(); }
    };
}]);


// Deal with promise in controller (or anywhere else)
var allProducts = productData.products().then(function(result){
  // now you have results from restangular!
});

您还可以使用Restangular.all('products').getList().$object,它返回一个数组,当数据到达时填充该数组。您还可以在视图等中绑定到此数组,当数据可用时,这些数组将被更新。

如果您认为满意,请标记一个答案