你有一個原型對象Foo有兩個異步方法調用,bar和baz。鏈式異步方法調用 - javascript
var bob = new Foo()
Foo.prototype.bar = function land(callback) {
setTimeout(function() {
callback()
console.log('bar');
}, 3000);
};
Foo.prototype.baz = function land(callback) {
setTimeout(function() {
callback()
console.log('baz');
}, 3000);
};
我們想要做bob.bar()。baz()並讓它依次記錄「bar」和「baz」。
如果您不能修改方法調用(包括傳遞迴調函數),那麼如何將默認回調傳遞給這些方法調用?
一些想法:
裹「鮑勃」與裝飾(關於如何執行仍然模糊,可以用一個小例子)
修改構造函數指定默認的回調,如果沒有指定(有沒有考慮這是否可能)
使用一個生成器包裝,將繼續調用下一個方法,直到沒有剩下?
你可以指定你想使用的承諾?他們發生但不知道他們是如何應用的 –
你是否結婚了'bob.bar()。baz()'語法?有很多方法可以讓你的描述得到操作,但我想不出任何可以用這種特定語法的東西。 – Mike
假設我們是:(我想我們必須包裝它 –