Bu ona görədir ki, setState vəziyyəti dəyişir və yenidən göstərilməsinə səbəb olur. Bu bahalı əməliyyat ola bilər və onu sinxronlaşdırmaq brauzeri cavabsız qoya bilər. Beləliklə, setState zəngləri asinxrondur, həmçinin daha yaxşı UI təcrübəsi və performans üçün qruplaşdırılır.
Niyə setState metodu asinxrondur?
Komponentin vəziyyətini yeniləmək üçün siz setState metodundan istifadə edirsiniz. Bununla belə, setState metodunun asinxron olduğunu unutmaq asandır, bu da kodunuzda problemlərin həllində çətinliyə səbəb olur. setState funksiyası həmçinin Promise qaytarmır. Async/await və ya oxşar hər hansı bir şey işləməyəcək.
SetState sinxronlaşdırıla bilərmi?
Qəribə səslənə bilər, lakin bəli setState reaksiya ilə sinxron işləyə bilər.
Niyə setState-də gecikmə var?
Rəsmi izahat. SetState() funksiyasını komponenti yeniləmək üçün dərhal əmr deyil, sorğu kimi düşünün. Daha yaxşı qəbul edilən performans üçün Reaksiya onu gecikdirə bilər və sonra bir keçiddə bir neçə komponenti yeniləyə bilər. React vəziyyət dəyişikliklərinin dərhal tətbiq olunacağına zəmanət vermir.
React JS sinxron yoxsa asinxrondur?
İlk növbədə, bəli, bu asinxrondur.