gpt4 book ai didi

javascript - 使用 Angular Js Promises 发出多个异步请求

转载 作者:行者123 更新时间:2023-11-28 15:04:46 25 4
gpt4 key购买 nike

我有一系列城市及其名称和网址。

$scope.cities = [{'name':'LKO','url': 'http://sm.com'},{'name':'LK1O','url': 'http://sm1.com'}]

现在我需要向城市中存在的网址发出请求。随着一个请求的响应到达,一个又一个请求。

我知道使用 Promise 可以实现这一点。但是,我无法得到确切的解决方案。

最佳答案

您可以使用 $q.all() 在一系列 Promise 全部解决后运行代码

var promises = $scope.cites.map(function(city) {
return $http.get(city.url).then(function(resp) {
var cityData = resp.data;
// do something with cityData here

// then return it
return cityData;
});
});

$q.all(promises, function(cityDataArray) {
// do something with array
});

这种方法假设请求彼此不依赖,并且比递归执行要快得多

确保将 $q 注入(inject)到您发出这些请求的服务或 Controller

关于javascript - 使用 Angular Js Promises 发出多个异步请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39497388/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com