3

我正在尝试使用 $resource 进行 ajax 调用,并在从服务器接收数据时加载数据表。但是当我调用 get() 时,我得到 $promise 为未定义。我正在使用工厂拨打电话。这是我的工厂:

    app.factory('getAllUsers', [ '$resource', function($resource) {
return $resource('URL', {}, {get : {method : 'GET'}});
}]);

和控制器:

      app.controller('MyController',function($scope,$location,getAllUsers){

        console.log("In controller");

        getAllUsers.get().$promise.then(function(data) {

            loadDatatable(data);
            });


     });

错误:getAllUsers.get().$promise 未定义

注意:我的应用程序中包含了 ngResource,index.html 中也包含了 angular-resource.js。

4

3 回答 3

1

$resource服务在 1.0.x 版本中不返回承诺;请务必阅读正确版本的文档。默认情况下,http ://docs.angularjs.org/api/ 是针对 1.2.x 系列的,目前是不稳定的。试试这个版本的 api 文档:http ://code.angularjs.org/1.0.8/docs/api

于 2013-10-25T14:18:42.820 回答
0

既然你正在使用$resource你可以做

 getAllUsers.get({},function(data) {
    loadDatatable(data);
 });
于 2013-10-25T12:29:39.340 回答
0

您是否忘记添加 .json 作为调用类型?

app.factory "User", ["$resource", ($resource) ->
  $resource("/users/:id.json", {id: "@id"}, {update: {method: "PUT"}})
]
于 2014-09-24T09:42:56.940 回答