0

私のコードには次のものがあります。

    var EntityResource = $resource('/api/:entityType', {}, {
        postEntity: { url: '/api/:entityType/', method: 'POST' },
        getEntity: { url: '/api/:entityType/:entityId', method: 'GET' },
        putEntity:     { url: '/api/:entityType/:entityId', method: 'PUT' },
        deleteEntity: { url: '/api/:entityType/:entityId', method: "DELETE" },
        getEntities: { url: '/api/:entityType/:action/:id', method: 'GET', isArray: true },
    });

次に、次を使用してデータを取得しています。

    getProjects: function (
            entityType,
            deptId) {
            var deferred = $q.defer();
            EntityResource.getEntities({
                action: "GetProjects",
                entityType: entityType,
                deptId: deptId
            },
               function (resp) {
                   deferred.resolve(resp);
               }
            );
            return deferred.promise;
        },

getProjects を呼び出すには、次のようにします。

            entityService.getProjects(
                'Project',
                $scope.option.selectedDept)
            .then(function (result) {
                $scope.grid.data = result;
            }, function (result) {
                $scope.grid.data = null;
            });

中間関数 getProjects は必要ないと思い、$resource を直接使用したいと考えています。

どうすればこれを行うことができるかについて、誰かがアドバイスをくれますか? $resource の AngularJS ドキュメントを見ましたが、あまり明確ではありません。

4

1 に答える 1