Как удалить определенные слушатели в клиентском сокете. Мне нужно удалить слушателя, потому что этот контроллер можно инициализировать несколько раз. и я не хочу добавлять нового слушателя в сокет каждый раз, когда контроллер инициализируется.SocketIO 1.3.2 remove listner, Сторона клиента
function EventMessagesController($scope,socket, $rootScope) {
socket.on('message', function (message) {
//Handle messsage
})
$scope.$on("$destroy",
function handleDestroyEvent() {
socket.manager().removeListner('message');
}
);
}
Любая помощь будет оценена по достоинству. Документация Socket IO не самая ясная, и я не могу найти ответ в исходном коде.
Вы не должны инициализировать событие сокета изнутри контроллера для начала. Переместите его в службу и потребуйте эту службу в своем приложении, а не в контроллере .. или что-то в этом роде, при этом основная цель заключается в том, что он получает только один раз, независимо от маршрутов и/или контроллеров. – laggingreflex