Socket.io: removeListener لا يزيل المستمع

تم إنشاؤها على ٨ مارس ٢٠١٤  ·  4تعليقات  ·  مصدر: socketio/socket.io

لدي هذا الغلاف لـ 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);
        }

هذا يتركني مع مستمعين مكررين مع مرور الوقت.

التعليق الأكثر فائدة

ما زلنا نواجه نفس المشكلة بعد أكثر من عامين. أعتقد أن إزالة مستمع واحد يجب أن يكون شيئًا أساسيًا.

ال 4 كومينتر

وما زالت هذه المسألة. عندما أستخدم removeListener ، فإنه لا يزيل الحدث ولكن باستخدام أعمال removeAllListeners.

+1 فقط removeAllListeners يعمل بشكل صحيح

ما زلنا نواجه نفس المشكلة بعد أكثر من عامين. أعتقد أن إزالة مستمع واحد يجب أن يكون شيئًا أساسيًا.

أي حل لهذا حتى الآن؟

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات