Бұл setState күйді өзгертіп, қайта көрсетуге себеп болатындықтан. Бұл қымбат операция болуы мүмкін және оны синхронды ету браузерді жауапсыз қалдыруы мүмкін. Осылайша, setState қоңыраулары асинхронды, сонымен қатар жақсырақ UI тәжірибесі мен өнімділігі үшін топтастырылған.
Неге setState әдісі асинхронды?
Компоненттің күйін жаңарту үшін setState әдісін қолданасыз. Дегенмен, setState әдісі асинхронды екенін ұмыту оңай, бұл сіздің кодыңыздағы мәселелерді түзетуді қиындатады. setState функциясы сонымен бірге Promise қайтармайды. Асинхрондау/күту немесе ұқсас нәрсені пайдалану жұмыс істемейді.
SetState синхронды етуге бола ма?
Бұл біртүрлі естілуі мүмкін, бірақ иә setState реакцияда синхронды түрде жұмыс істей алады.
Неге setState кешігуі бар?
Ресми түсініктеме. setState() компонентті жаңарту үшін дереу пәрмен емес, сұрау ретінде қарастырыңыз. Жақсырақ қабылданатын өнімділік үшін React оны кешіктіруі мүмкін, содан кейін бір өтуде бірнеше құрамдастарды жаңарту. React күй өзгерістерінің бірден қолданылатынына кепілдік бермейді.
React JS синхронды ма, әлде асинхронды ма?
Біріншіден, иә, бұл асинхронды.