Задать вопрос
@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() но иногда случается так, что мне несколько раз нужно обработать данные.

Как правильно вообще очистить класс, что бы не было утечек?
  • Вопрос задан
  • 155 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

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

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