0

我正在使用 Angular 的for $httpgetpost操作。现在我已经在我的 Angular 控制器中编写了这段代码。putdelete

- 现在 -

我想使用$resource而不是$http并将这些数据调用放在工厂中。在搜索了这么多网站后,我发现了这个:

"use strict";
    angular.module("app")
        .factory('someFactoryName', function ($resource) {
            return $resource('/foo/bar/:id', { id: '@_id' }, {
                update: {
                    method: 'PUT' // this method issues a PUT request
                }
            });
        })

现在我可以像这样在我的控制器中使用这个工厂:

$scope.entry = new someFactoryName();
$scope.entry.$save(function (response) {
     //some code
});

到这里一切都很好。

-- 现在我想要达到的目标 --

我看过 John Papa 的Angular1 样式指南,我找到了这个部分,他演示的代码非常好我想实现同样的目标,我的意思是他调用 ajax 调用并在单独的工厂处理响应,但在这里我的情况略有不同. 我唯一的挑战是他已经使用$http并且我想使用$resource但是因为$resource我已经有一个工厂那么我如何在$resource配置的同一个工厂中编写响应处理代码。我有两个想法:

  1. 我可以再定义一个工厂并将这个工厂注入新的工厂,
  2. 不知何故在同一个工厂写代码

    我不知道哪个是最好的以及如何实现它,如果您有任何想法,请帮助。谢谢。

4

1 回答 1

0

我会建议第一个选项。 关注点分离很重要。

于 2016-10-13T13:03:43.703 回答