AngularJS $http 响应

标签 angularjs angularjs-scope angular-promise

这是我的代码

var object = null
app.controller("controller",function($scope,service){
    $scope.search=function(){
        service.findData().then(
            function successCallback(response){
                object = response.data
            },
            function errorCallback(response){
                alert("error")
            }
        )
        console.log(object)
    }
})

当我打印对象时,它是空的,所以问题是:如何在外面获取response.data?

感谢您的帮助!

最佳答案

将 Controller 分配给变量是 AngularJS 时代的普遍做法。

app.controller("controller",function($scope,service){
    var self = this;
    $scope.search=function(){
        service.findData().then(
            function successCallback(response){
                self.yourBusinessFunction (response.data)

            },
            function errorCallback(response){
                alert("error")
            }
        )
        console.log(object)
    }

    self.yourBusinessFunction = function(data){

    console.log(data);
    // data here will be the response.data from the service
    // You can write your logic here

    }


})

关于AngularJS $http 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53431922/

相关文章:

angularjs - 超媒体 (HATEOAS) 驱动的 AngularJS 应用程序中的 URL 处理

javascript - 如何从两次或三次嵌套的 ng-repeat 范围访问 Controller 的范围?

javascript - 操作由 Promise AngularJS 返回的返回变量

javascript - AngularJS:嵌套指令内的对象未定义?

javascript - Angular/Controller 加载 json 文件失败,出现我无法理解的异常

javascript - 使用 promise 对象中止 ngResource

javascript - Protractor E2E 和 Angular

javascript - Angular 无法推送数组中的重复项

AngularJS 单元测试错误 : scope is undefined

angularjs - 如何在 Controller 中测试 Angular $destroy