@Devastor
I ❤❤❤ JAVASCRIPT

Как отписываться от подписки на сокеты Socket.IO?

Допустим имеется factory:
var socket = io.connect('ip');
        return {
            on: function (eventName, callback) {
                socket.on(eventName, function () {
                    var args = arguments;
                    $rootScope.$apply(function () {
                        callback.apply(socket, args);
                    });
                });
            },
            emit: function (eventName, data, callback) {
                socket.emit(eventName, data, function () {
                    var args = arguments;
                    $rootScope.$apply(function () {
                        if (callback) {
                            callback.apply(socket, args);
                        }
                    });
                })
            }
        };

с её помощью можно просто подписываться и ловить ответы, в контроллере/директиве angular
socketIo.emit('subscribe', 'needThis');
socketIo.on('needThis', function(data){
           console.log(data);
 });

Вопрос, как отписаться от подписки на needThis?
  • Вопрос задан
  • 648 просмотров
Решения вопроса 1
SPAHI4
@SPAHI4
реактовцы - это не девы, а прокидыватели пропсов
socket.removeAllListeners("needThis");
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@AndyGrom
Web-developer
function needThis(data){
    console.log(data);
}
socketIo.on('needThis', needThis);
socketIo.removeListener('needThis', needThis);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы