Ich habe diesen Wrapper für 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);
}
Dies hinterlässt bei mir im Laufe der Zeit doppelte Zuhörer.
Dies ist immer noch ein Thema. Wenn ich removeListener verwende, wird das Ereignis nicht entfernt, aber die Verwendung von removeAllListeners funktioniert.
+1 nur removeAllListeners funktioniert ordnungsgemäß
Wir haben immer noch das gleiche Problem mehr als 2 Jahre später. Ich denke, das Entfernen eines einzelnen Hörers sollte etwas Grundlegendes sein.
schon eine lösung dafür?
Hilfreichster Kommentar
Wir haben immer noch das gleiche Problem mehr als 2 Jahre später. Ich denke, das Entfernen eines einzelnen Hörers sollte etwas Grundlegendes sein.