Pot.Deferred.prototype.then

{Pot.Deferred} Pot.Deferred.prototype.then ({Function} callback [, {Function} errback])

Pot.js と PotLite.js で利用可能。

Deferred チェインにコールバック関数を追加します。

コールバック関数 callback をチェインに追加します。
任意に、関数 errback が与えられると、 エラーバックとしてチェインに追加します。
エラーバック関数は rescue() で登録することと同じです。
callback は成功時に実行されます。 errback はエラー時に、エラーを引数に持ち実行されます。
errback は省略可能です。
2 つの関数を、成功時、エラー時 として追加することで手間が省けます。

実行時の Pot.Deferred インスタンスが返ります。

var d = new Deferred();

d.then(function() {
    return someFunc();
}).then(function(res) {
    // 成功時
    debug(res);
}, function(err) {
    // エラー時
    debug(err);
});
d.begin();