Middle
Πότε ενεργοποιείται η λειτουργία καθαρισμού στο useEffect;
sobes.tech AI
Απάντηση από AI
Η λειτουργία καθαρισμού στο useEffect ενεργοποιείται στις ακόλουθες περιπτώσεις:
- Πριν από την επανεκτέλεση του αποτελέσματος όταν αλλάζουν οι εξαρτήσεις.
- Κατά την αποσύνδεση του συστατικού.
Αυτό επιτρέπει την σωστή απελευθέρωση πόρων, την ακύρωση συνδρομών ή χρονόμετρων, για να αποφευχθούν διαρροές μνήμης και λανθασμένη συμπεριφορά.
Παράδειγμα:
useEffect(() => {
const id = setInterval(() => {
console.log('tick');
}, 1000);
return () => {
clearInterval(id); // καθαρισμός κατά την αποσύνδεση ή ενημέρωση
};
}, []); // κενός πίνακας εξαρτήσεων — το effect θα εκτελεστεί μία φορά