Logo el.boatexistence.com

Γιατί το setstate είναι ασύγχρονο;

Πίνακας περιεχομένων:

Γιατί το setstate είναι ασύγχρονο;
Γιατί το setstate είναι ασύγχρονο;

Βίντεο: Γιατί το setstate είναι ασύγχρονο;

Βίντεο: Γιατί το setstate είναι ασύγχρονο;
Βίντεο: ReactJS Tutorial - 11 - setState 2024, Ενδέχεται
Anonim

Αυτό συμβαίνει επειδή το setState αλλάζει την κατάσταση και προκαλεί την επαναπόδοση. Αυτή μπορεί να είναι μια δαπανηρή λειτουργία και η συγχρονισμένη μπορεί να αφήσει το πρόγραμμα περιήγησης να μην ανταποκρίνεται. Επομένως, οι κλήσεις setState είναι ασύγχρονες καθώς και ομαδικές για καλύτερη εμπειρία και απόδοση διεπαφής χρήστη.

Γιατί η μέθοδος setState είναι ασύγχρονη;

Για να ενημερώσετε την κατάσταση ενός στοιχείου, χρησιμοποιείτε τη μέθοδο setState. Ωστόσο, είναι εύκολο να ξεχάσουμε ότι η μέθοδος setState είναι ασύγχρονη, με αποτέλεσμα να είναι δύσκολο να εντοπιστούν σφάλματα στον κώδικά σας. Η συνάρτηση setState δεν επιστρέφει επίσης μια υπόσχεση Η χρήση async/wait ή οτιδήποτε παρόμοιο δεν θα λειτουργήσει.

Μπορεί το setState να γίνει σύγχρονο;

Μπορεί να ακούγεται περίεργο, αλλά ναι, το setState μπορεί να λειτουργήσει συγχρονισμένα στο react.

Γιατί υπάρχει καθυστέρηση στο setState;

Επίσημη εξήγηση. Σκεφτείτε τη setState() ως αίτημα και όχι ως άμεση εντολή για την ενημέρωση του στοιχείου. Για καλύτερη αντιληπτή απόδοση, το React μπορεί να το καθυστερήσει και, στη συνέχεια, να ενημερώσει πολλά στοιχεία σε ένα μόνο πέρασμα. Το React δεν εγγυάται ότι οι αλλαγές κατάστασης εφαρμόζονται αμέσως.

Είναι το React JS σύγχρονο ή ασύγχρονο;

Πρώτα απ' όλα, ναι, είναι ασύγχρονο.

Συνιστάται: