В клиенте juscript-pusher можно отменить все обратные вызовы с определенного канала или события?Как отсоединить от всех каналов/событий на толкателе
1
A
ответ
0
Канал наследуется от EventDispatcher, и в настоящее время он не предлагает отменить все. Вы можете взломать его повторно инициализацию переменной callbacks
члена, который управляет событиями на channel
:
var pusher = new Pusher('22364f2f790269bec0a0');
var channel = pusher.subscribe('test-channel');
var callback = function() {};
for(var i = 0, l = 10; i < l; ++i) {
channel.bind('event-' + i, callback);
}
console.log(channel.callbacks._callbacks);
channel.callbacks = new channel.callbacks.constructor();
Вы можете увидеть это в действии here. Но это будет взлом.
Лучшее, что нужно сделать, это отправить запрос на растяжение, чтобы добавить функцию unbind_all
в объект EventDispatcher
.