Pot.js と PotLite.js で利用可能。
Deferred チェインのキャンセル時に実行される関数を登録 または取得します。
キャンセル時に実行される関数を登録、または取得します。
cancel() が呼ばれた時に実行される関数を登録します。
canceller はスタッカブルに関数を保持しているため、
複数の関数を登録することができます。
引数を省略して実行した場合、登録済みの関数を持つ配列が返ります。
実行時の Pot.Deferred インスタンスが返ります。
引数に何も与えずに実行した場合、登録済みの関数を持つ配列が返ります。
var d = new Pot.Deferred(); d.canceller(function() { debug('cancelled!'); }).canceller(function() { debug('cancelled!!'); }).then(function() { debug('start chain'); }); d.cancel(); // cancelled! // cancelled!! // と出力される