如何在其他地方使用$ http.get的响应

时间:2018-04-08 20:43:25

标签: javascript angularjs

我想在同一reponse.data的其他地方使用$http.get的{​​{1>}( JSON 数据),但是在尝试时:

controller

获取 $http({ method:"post", url:"php/home/item.php/?proc=3", data:{ 'item_id':json[i].item_id } }).then(function (response) { $scope.data = response.data; // or $rootScope $scope.data = response.data; console.log("after get response : "+$scope.data.length); }); console.log("befor get response : "+$scope.data.length); // undefined response

之后,如何推迟某些说明?

1 个答案:

答案 0 :(得分:1)

传递给then 的函数是推迟执行的方式,直到收到响应为止。这不仅仅是代码范围或位置问题,而是一个时间问题。您可以从该响应函数中调用其他函数,并传递响应 - 这是您可以从控制器中的其他位置访问响应的唯一方法,并确保您在执行后执行代码已收到回复。