javascript - 如何从 jQuery 中通过 $.when 解析的多个 Promise 对象中检索数据?

标签 javascript jquery jquery-ui asynchronous data-synchronization

假设我们只有一个 Promise 对象,如下所示。

var myPromise = $.get(url1);
myPromise.done(function(data){
    console.log(data);
});

我们能够从 Promise 对象访问数据。现在假设,我们有多个通过 $.when 解析的 Promise 对象

var multiplePromises = $.when($.get(url1),$.get(url2),$.get(url3));
multiplePromises.done(function(){

});

必须满足上述要求,即只有所有的get请求都完成后,才执行done部分。但是我如何单独获取每个 get 的数据响应以在 $.when.done() 方法中使用它们?

最佳答案

你将它们作为参数。

function get(what) {
  return $.when(what)
}

$.when(get(1), get(2), get(3)).done(function(first, second, third) {
  console.log(first, second, third)
})
<script src="https://unpkg.com/jquery@3.2.1/dist/jquery.js"></script>

关于javascript - 如何从 jQuery 中通过 $.when 解析的多个 Promise 对象中检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46010859/

相关文章:

javascript - 好处和。在本地托管 jQuery 的陷阱

css - jquery.ui 隐藏固定元素

javascript - 如何将文本从一页重复到另一页以减少每月更新的时间

javascript - 如何使用 Jscript 更改 <p> 的文本?

javascript - 如果页面在一段时间内保持空闲状态,则获取输入文本的 "NULL/Empty "值?

javascript - 使用 onbeforeunload 事件,选择停留在此页面时 url 发生变化

jquery - 平滑滚动不适用于 Bootstrap 轮播

jquery - 将 asp mvc3 不引人注目的验证与 jquery 验证插件混合

JavaScript : Check if object has properties

jquery-ui - jQuery的toggleClass和slideToggle