@Impuls3

Как удалить слушатели событий?

Есть к примеру вот такой код.
class Account {
    constructor(data) {
        this.user = new User();
        this.registerEvents();
        this.logOn({login: this.user.login, password: this.user.password});
        return this;
    }

    registerEvents() {
        this.user.on('loggedOn', () => {
            console.log('Login success!');
        })
        
        this.user.on('friendList', () => {
            //... -- обработал данные, и хочу завершить работу
            this.destruction();
        })

    }    

    logOn(data) {
        this.user.logOn(data);
    }

    destruction() {
        this.user.removeAllListeners();
        this.user.logOff();
        this.user = null;
    }
}


Проблема в том, что после вызова destruction(); Софт все равно слушает события.
Да, я понимаю - можно использовать не .on() a .once() но иногда случается так, что мне несколько раз нужно обработать данные.

Как правильно вообще очистить класс, что бы не было утечек?
  • Вопрос задан
  • 149 просмотров
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

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

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