Middle
Кога се изпълнява cleanup функцията в useEffect?
sobes.tech AI
Отговор от AI
Функцията за почистване в useEffect се активира в следните случаи:
- Преди повторното изпълнение на ефекта при промяна на зависимостите.
- При демонтиране на компонента.
Това позволява правилно освобождаване на ресурси, анулиране на абонаменти или таймери, за да се избегнат течове на памет и неправилно поведение.
Пример:
useEffect(() => {
const id = setInterval(() => {
console.log('tick');
}, 1000);
return () => {
clearInterval(id); // почистване при демонтиране или актуализация
};
}, []); // празен списък с зависимости — ефектът ще се изпълни веднъж