4 Απαντήσεις. Κατά τη διάρκεια του VirtualDOM Reconciliation, εάν ένα στοιχείο υπήρχε αλλά δεν θα υπάρχει πλέον, το στοιχείο θεωρείται μη προσαρτημένο και δίνεται η ευκαιρία να καθαριστεί (μέσω του componentWillUnmount). Όταν γκρεμίζουμε ένα δέντρο, οι παλιοί κόμβοι DOM καταστρέφονται. Οι παρουσίες στοιχείων λαμβάνουν componentWillUnmount.
Γιατί αποσυναρμολογείται το στοιχείο μου React;
Τα στοιχεία αποπροσαρτώνται όταν το γονικό στοιχείο δεν αποδίδεται πλέον ή το γονικό στοιχείο εκτελεί μια ενημέρωση που δεν αποδίδει αυτήν την παρουσία. ReactDOM. Το unmountComponentAtNode θα ενεργοποιήσει επίσης μια αποπροσάρτηση.
Πώς εμποδίζετε την αποπροσάρτηση στοιχείων;
Χρησιμοποιώντας το react-router μπορείτε εύκολα να αποτρέψετε την αλλαγή διαδρομής (η οποία θα αποτρέψει την αποπροσάρτηση του στοιχείου) χρησιμοποιώντας το Prompt. Πρέπει να περάσετε με μη αυτόματο τρόπο τη βάση getUserConfirmation που είναι μια συνάρτηση. Μπορείτε να τροποποιήσετε αυτήν τη λειτουργία όπως θέλετε σε οποιονδήποτε δρομολογητή (πρόγραμμα περιήγησης, μνήμη ή κατακερματισμός) για να δημιουργήσετε το προσαρμοσμένο παράθυρο διαλόγου επιβεβαίωσης (π.χ.
Τι είναι η αποπροσάρτηση ενός στοιχείου;
Το
componentWillUnmount είναι η τελευταία συνάρτηση που καλείται αμέσως πριν το στοιχείο αφαιρεθεί από το DOM. Γενικά χρησιμοποιείται για την εκκαθάριση για τυχόν στοιχεία DOM ή χρονόμετρα που έχουν δημιουργηθεί στο componentWillMount. Σε ένα πικνίκ, το componentWillUnmount αντιστοιχεί ακριβώς πριν σηκώσετε την κουβέρτα για πικνίκ.
Τι ενεργοποιεί το componentWillUnmount;
Το
componentWillUnmount καλείται αμέσως πριν από μιαΤο στοιχείο αποπροσαρτάται και καταστρέφεται. Εκτελέστε οποιαδήποτε απαραίτητη εκκαθάριση σε αυτήν τη μέθοδο, όπως ακύρωση χρονοδιακόπτη, ακύρωση αιτημάτων δικτύου ή εκκαθάριση τυχόν συνδρομών που δημιουργήθηκαν στο componentDidMount.