Socket.io: removeListener 不删除监听器

创建于 2014-03-08  ·  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 等级