如何同时运行两个承诺并在nodejs中一个接一个地失败
How to run two promises in the same time and fail one by one in nodejs
我有两个承诺,一个可能很慢,另一个会更快。我知道Promise.all
是全部或全无,所以当慢速超时时,它会导致另一个也不显示结果。无论如何,我可以同时运行两个承诺,如果慢速承诺失败,我仍然可以从快速承诺中获取结果而无需进行大量回调?
我用谷歌搜索,似乎找不到一个例子
var pList = [slowQuery({url: url}), fastQuery({url: url})];
Promise.all(pList).then(function doneFunc(results) {
output.slow = results[0];
output.fast = results[1];
window.respond(output);
}).catch(function errFunc() {
output.slow = [];
output.fast = [];
window.respond(output);
});
}
这可能很有用:
Promise.race(iterable) 方法返回一个承诺,该承诺解析或 一旦可迭代对象中的一个承诺解析或 拒绝,以及该承诺的价值或理由。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/race
相关文章:
- JavaScript到PHP的时间戳失败,增加了大约一个半月的时间
- 为什么一个空的200会在jQuery中创建一个失败
- 为什么我会得到一个“;auth失败”;使用正确的凭据连接到MongoDB时出错
- 当CDN加载失败时,为字体添加一个本地CSS回退
- $.getJSON 到一个带有 include_once 的 php 失败了,但它完成了工作
- jQuery验证另一个值失败
- 我用脚本创建了一个按钮.我可以通过点击按钮调用其他函数吗?我这样做,但失败了
- 当表单验证失败时,我将如何最好地处理下一个事件
- 用C#在Win 8.1 Chakra中执行JS的一个失败的最小例子
- 我正在用java脚本编写一个hangman程序,如果玩家失败了,我需要帮助来显示这个词
- 一个iframe随机失败到XHR
- 循环遍历所有字段,如果任何一个字段的验证失败jquery,则返回false
- Angular JS,把json放到ng重复出一个事件失败
- 量角器:失败:row.findElement 不是一个函数
- 如何将 $http.put 封装到一个函数中,该函数执行某些操作,然后返回通过或失败的承诺
- 如何同时运行两个承诺并在nodejs中一个接一个地失败
- jQuery: $.when 延迟的 AJAX 调用 — 一个失败的调用会取消其他调用
- 在所有跨度上循环并更新一个失败的whit JQuery
- MVC3控制器操作以编程方式返回一个失败的发布请求
- 如何制作一个失败的规格清单使用茉莉自定义记者发布到slack