angularjs - 是否有更紧凑的方法在函数内使用 AngularJS 返回延迟?

标签 angularjs

我有一个函数,用于调用 $http,执行一些代码,然后返回成功或拒绝 promise 。

function getActions() {
    var self = this;
    var defer = this.$q.defer();
    this.$http({
        url: '/api/Action/GetActions',
        method: "GET"
    })
        .success(function (data) {
            // Other code here for success
            self.Actions = data;
            return defer.resolve();
        })
    return defer.promise;
};

我想通过执行以下操作来简化此操作:

    return this.$http({
        url: '/api/Action/GetActions',
        method: "GET"
    })... etc

但是如果我这样做,那么我将无法成功获得任何代码。

谁能告诉我是否有任何方法可以简化代码?

最佳答案

function getActions()
{
    var self = this;

    var promise = this.$http({
        url: '/api/Action/GetActions',
        method: "GET"
    });

    promise.success(function (data) {
       // Other code here for success
       self.Actions = data;
    });

    return promise;
}

关于angularjs - 是否有更紧凑的方法在函数内使用 AngularJS 返回延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26614495/

相关文章:

python - 使用 Python Flask、AngularJS、测试/生产目录和服务请求

angularjs - 在 ionic 中安装 angular-gettext 的演练

php - CakePHP2 : CORS Preflight issues with JWT Auth

javascript - 指令之间通信的最佳方式

javascript - AngularJS - 将自定义类指令应用于 ng-repeat 项目

javascript - Angular $resource 不适用于 Controller

javascript - 如何在angularjs中设置多个条件样式

javascript - 访问 ng-repeat 的项目范围

javascript - 如何在指令 AngularJS 中包装 jQuery(默认)handsontable?

angularjs - Satellizer Facebook 登录未返回正确的范围