JiSeven
@JiSeven
web-developer

RemoveEventListener в React и IE. Как работает?

Всем привет! У меня такая ситуация: есть компонент, который в componentDidMount вешает eventListener на документ. В componentWillUnmount я его убираю. Работает это все хорошо в браузерах, кроме ие. Ие же сначала выполняет функцию, которую я передал при создании слушателя, а только потом убирает его (или вообще не убирает, не понял я). Как быть в таком случае? Что происходит?

componentDidMount() {
    if (this.props.controls) {
      document.addEventListener('click', this.componentSearchListener, false);
      document.addEventListener('touchstart', this.componentSearchListener, false);
    }
  }

 componentWillUnmount() {
    document.removeEventListener('click', this.componentSearchListener, false);
    document.removeEventListener('touchstart', this.componentSearchListener, false);
  }
  • Вопрос задан
  • 521 просмотр
Решения вопроса 1
victorzadorozhnyy
@victorzadorozhnyy
Игорь Шумиловский: а если на window.removeEventListener и window.addEventListener повесить?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы