gpt4 book ai didi

javascript - AngularJS $q.all 超时

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

我正在使用 AngularJS 的 $q 函数将多个 Promise 组合在一起。但是,我还想设置一个超时来取消此 promise ,并在一定时间后没有对任何这些 promise 做出任何响应时执行其他操作。这可能吗?

代码:

var data = {};
var map_dataFile = $http.get("GET Request 1"),
node_dataFile = $http.get("GET Request 2"),
country_data = $http.get("GET Request 3"),
shipment_data = $http.get("GET Request 4"),
location_data = $http.get("GET Request 5");
$q.all([map_dataFile, node_dataFile, country_data, shipment_data, location_data]).then(function(results) {
data.countries = results[0].data;
data.nodes = results[1].data;
data.countries_indicator = results[2].data;
data.shipment_flows = results[3].data;
data.location_data = results[4].data;
});
//do something else if it takes more than 10s, and cancel the $q.all promise

最佳答案

$httpget 方法可以获取配置对象。此配置对象的支持参数之一是timeoutSee documentation

您可以将超时值传递给 http 配置,如果任何操作需要更多时间,则完整的 $q promise 将被拒绝。

关于javascript - AngularJS $q.all 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19900465/

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