1

次のような単純な RESTful サービスがあります。

services.factory('UserService', ['$resource, function() {
   return $resource('...');
}]);

このように、次のように呼び出す必要があります。

UserService.get({id: userId}, function(response) {
 // do something.
});

私はこのようなことをしたいと思っていました:

UserService.get(userId).then(function(response) {
    // do something with data
});

出来ますか?私はこれに苦労しており、コントローラーで常に $promise.then() を使用する必要があります。RESTful サービスでその $promise を「隠し」たかったのです。

4

2 に答える 2

0

$resource... まあ ... を介して意図的にプロミスを公開するため、 を使用してこれを抽象化$promiseできます。UserService

services.factory("UserService", ["$resource", function ($resource) {
    var userService = $resource("...");

    return {
        get: function (id) {
            return userService.get({id: id}).$promise;
        }
    }
});
于 2014-08-07T14:43:29.293 に答える