Pot.js と PotLite.js で利用可能。
エラー時に実行されるエラーバック関数を Deferred チェインに追加します。
エラーバック関数をチェインに追加します。
エラーバックはコールバックチェインで
エラーが発生したときに、引数にエラーを持ち実行されます。
実行時の Pot.Deferred インスタンスが返ります。
var d = new Pot.Deferred();
d.then(function() {
// エラーを発生させる
throw new Error('MyError');
}).rescue(function(err) {
// エラーをキャッチ
debug(err); // Error: MyError
return 1;
}).then(function(res) {
// チェインを継続
if (res == 1) {
// 再度エラーを発生させる
// Error オブジェクトでなくても throw されるとエラー扱い
throw res;
}
}).rescue(function(err) {
// エラーを捕捉
debug(err); // Error: 1
});
d.begin();