套接字IO 1.3.2删除监听器,客户端

时间:2015-04-04 15:40:08

标签: angularjs socket.io

如何在客户端套接字上删除特定侦听器。我需要删除监听器,因为这个控制器可以多次初始化。并且我不想在每次初始化控制器时向套接字添加新的监听器。

function EventMessagesController($scope,socket, $rootScope) {

socket.on('message', function (message) {
     //Handle messsage
})

$scope.$on("$destroy",
    function handleDestroyEvent() {
        socket.manager().removeListner('message');
    }
);
}

任何帮助将不胜感激。套接字IO文档并不是最清晰的,我无法在源代码中找到答案。

1 个答案:

答案 0 :(得分:0)

socket.io套接字是eventEmitter,因此您可以看到删除事件侦听器的各种方法here in the doc for eventEmitter

您可以选择使用:

 socket.removeListener(event, listener)
 socket.removeAllListeners([event])

注意:您问题中的代码removeListner拼写错误。