Sobes.tech
Middle

În componentele de clasă, există metoda componentWillUnmount. Cum se implementează un echivalent într-un component funcțional?

sobes.tech AI

Răspuns de la AI

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

Пример:

import React, { useEffect } from 'react';

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

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

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

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