Встречается на собеседованиях • сегодня

Как происходит отписка от события в React

В React отписка от событий происходит в методе componentWillUnmount для классовых компонентов или с помощью возврата функции очистки в хуке useEffect для функциональных компонентов. Это предотвращает утечки памяти.

Пример с классом:

jsx
componentDidMount() {
  window.addEventListener('resize', this.handleResize);
}

componentWillUnmount() {
  window.removeEventListener('resize', this.handleResize);
}

Пример с хуками:

jsx
useEffect(() => {
  const handleClick = () => console.log('Clicked');
  document.addEventListener('click', handleClick);

  return () => {
    document.removeEventListener('click', handleClick);
  };
}, []);

Важно передавать ту же самую функцию при отписке, что и при подписке.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы