Eu tenho este invólucro para socket.io:
on: function (eventName, callback) {
console.log('socket on hit');
socket.on(eventName, function () {
var args = arguments;
$rootScope.$apply(function () {
callback.apply(socket, args);
});
});
//removes duplicate listener
// console.log('about to remove a listener') ;
socket.removeListener(eventName, callback);
}
Isso me deixa com ouvintes duplicados ao longo do tempo.
Isso ainda é um problema. Quando eu uso removeListener, ele não remove o evento, mas o uso de removeAllListeners funciona.
+1 apenas removeAllListeners está funcionando corretamente
Ainda enfrentamos o mesmo problema mais de 2 anos depois. Acho que remover um único ouvinte deve ser algo básico.
alguma solução para isso ainda?
Comentários muito úteis
Ainda enfrentamos o mesmo problema mais de 2 anos depois. Acho que remover um único ouvinte deve ser algo básico.