لدي هذا الغلاف لـ 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);
}
هذا يتركني مع مستمعين مكررين مع مرور الوقت.
وما زالت هذه المسألة. عندما أستخدم removeListener ، فإنه لا يزيل الحدث ولكن باستخدام أعمال removeAllListeners.
+1 فقط removeAllListeners يعمل بشكل صحيح
ما زلنا نواجه نفس المشكلة بعد أكثر من عامين. أعتقد أن إزالة مستمع واحد يجب أن يكون شيئًا أساسيًا.
أي حل لهذا حتى الآن؟
التعليق الأكثر فائدة
ما زلنا نواجه نفس المشكلة بعد أكثر من عامين. أعتقد أن إزالة مستمع واحد يجب أن يكون شيئًا أساسيًا.