2

我创建了一个工厂,在那里我有一个形成对象“create”的方法,控制器通过提交 REST 命令导致。现在我想要一个响应数据,因为控制台我可以看到请求成功。怎么做 ?如何获得响应?我会为我添加数字 32。

app.factory('Claims', ['$resource', function($resource) {
        return $resource('/portal/rest/registerClaim', null,
            {
                'create': { method: 'POST' }
            });
        }]);

app.controller('ClaimCtrl', ['$scope', 'Claims', function($scope, Claims) {

        $scope.registerClaim = function (PIN) {
            console.log(PIN);
            var obj = {
                    "t":t,
                    "a":"t",
                    "b":"z",
                    "c":"x",
                    "d":"q"
            };
            var a= Claims.create(obj);
            console.log(a);

        }
    }]);
4

1 回答 1

1

ngResource 的方法是异步的,所以你可以使用 $promise 获得响应

您可以阅读有关 $resource 的文档。 https://docs.angularjs.org/api/ngResource/service/ $resource

我在这里更改了您的代码。

app.factory('Claims', ['$resource', function($resource) {
    return $resource('/portal/rest/registerClaim', null,
        {
            'create': { method: 'POST' }
        });
    }]);

app.controller('ClaimCtrl', ['$scope', 'Claims', function($scope, Claims) {

    $scope.registerClaim = function (PIN) {
        console.log(PIN);
        var obj = {
                "t":t,
                "a":"t",
                "b":"z",
                "c":"x",
                "d":"q"
        };
        Claims.create(obj).$promise.then(function(resp) {
          $scope.resp = resp;
        });

    }
}]);
于 2015-09-08T08:29:58.887 回答