Middle
Kada įvyksta cleanup funkcijos iškvietimas useEffect?
sobes.tech AI
Atsakymas iš AI
useEffect valymo funkcija veikia šiais atvejais:
- Prieš efektą pakartotinai vykdant, kai keičiasi priklausomybės.
- Kai komponentas yra išmontuojamas.
Tai leidžia teisingai atlaisvinti išteklius, atšaukti prenumeratas ar laikmačius, siekiant išvengti atminties nutekėjimo ir netinkamo elgesio.
Pavyzdys:
useEffect(() => {
const id = setInterval(() => {
console.log('tick');
}, 1000);
return () => {
clearInterval(id); // valymas išmontuojant arba atnaujinant
};
}, []); // tuščias priklausomybių sąrašas — efektas bus vykdomas vieną kartą