Ez azért van, mert a setState megváltoztatja az állapotot, és újbóli megjelenítést okoz. Ez költséges művelet lehet, és ha szinkronizálja, előfordulhat, hogy a böngésző nem reagál. Így a setState hívások aszinkronok, valamint kötegeltek a jobb felhasználói felület élmény és teljesítmény érdekében.
Miért a setState metódus aszinkron?
Egy összetevő állapotának frissítéséhez használja a setState metódust. Könnyű azonban elfelejteni, hogy a setState metódus aszinkron, ami bonyolult hibakeresési problémákat okoz a kódban. A setState függvény szintén nem ad vissza Promise-t Az async/await vagy bármi hasonló használata nem működik.
A setState szinkronizálható?
Furcsán hangzik, de yes setState szinkronban tud működni a react.
Miért késik a setState?
Hivatalos magyarázat. Tekintse a setState()-t kérésnek, nem pedig azonnali parancsnak az összetevő frissítéséhez. A jobb észlelt teljesítmény érdekében a React késleltetheti, majd több összetevőt is frissíthet egyetlen lépésben. A React nem garantálja az állapotváltozások azonnali alkalmazását.
A React JS szinkron vagy aszinkron?
Először is igen, aszinkron.