Sobes.tech
Назад к вопросам
Middle
1

В классовых компонентах есть метод componentWillUnmount. Как реализовать аналог в функциональном компоненте?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

В функциональных компонентах React аналогом метода componentWillUnmount из классовых компонентов служит функция очистки (cleanup function), возвращаемая из хука useEffect.

Пример:

import React, { useEffect } from 'react';

function MyComponent() {
  useEffect(() => {
    // код, выполняющийся при монтировании

    return () => {
      // код очистки, выполняющийся при размонтировании
      console.log('Компонент размонтирован');
    };
  }, []); // пустой массив зависимостей гарантирует вызов только при монтировании и размонтировании

  return <div>Пример</div>;
}

Таким образом, если передать в useEffect пустой массив зависимостей, функция внутри return будет вызвана при размонтировании компонента, что соответствует поведению componentWillUnmount.