Back to questions
СБЕР
Middle
2
В классовых компонентах есть метод componentWillUnmount. Как реализовать аналог в функциональном компоненте?
Companies where asked
Answer from AI
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.