[英]How do I chain deferred objects in jQuery?
只是一小段代碼:
return $.when(
$.get('/url1.json').done(function(r){
//case 1
}), $.get('/url2.json').done(function(r) {
//case 2
})
).done(function(){return $.get('/url3.json').done(function(r){
//case 3
})})
該代碼的作用:
/url1.json
和/url2.json
運行,並在成功的case 1
case 2
分別運行case 1
和case 2
代碼 /usr1.json
和url2.json
都成功,它將運行/url3.json
$.when
/url1.json
返回的延期對象(或諾言,現在我/url1.json
/url2.json
過)(因此,按$.when
/url2.json
的規則,/ /url1.json
和/url2.json
的對象) 我需要的是:
1. ...
2. ...
3.返回由$.get('/url3.json')
返回的延遲對象
所以,也許我需要像
$.when(...).flatMap(function() { return $.get('/url3.json') })
我有什么辦法嗎?
只需調用then
而不是done
即可將promise更改為傳入回調的結果。
return $.when(
$.get('/url1.json'),
$.get('/url2.json')
)
.then(function() {
return $.get('/url3.json')
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.