Аналогично шаблону обещаний Я ищу шаблон событий, который не требует загрязнения объектов методами addEventListener / etc, я хочу иметь возможность вернуть объект, который также можно отменитькак «разрешенные» несколько раз.
Например, я могу написать метод, который возвращает объект «интервал», что-то вроде этого:
var ticker = createTicker(1000);
var subscription = ticker.then(function() { console.log('tick') });
... later on ...
subscription.cancel();
Ключевые различия здесь аналогичныВ обещании события стандартизированы, поэтому я могу подписаться без необходимости знать имя события, однако, в отличие от обещания, «завершение» может происходить несколько раз и даже может быть отменено (это будет эквивалентно removeEventListener).
Мне интересно узнать, допустимо ли это для обещаний, чтобы обработчик прогресса можно было использовать для множественных обратных вызовов, а полный обработчик никогда не использовался, но, что более важно, существует концепция отказа от подписки на обещание..
Если это не так, и обещания специализированы для этого сценария, яЕсть ли стандартизированный шаблон для того, что я описал?