假设我们只有一个 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/