Warum ist setState in reactjs Async anstelle von Sync?

Ich habe gerade festgestellt, dass in reagierenthis.setState()ie @ -Funktion in einer Komponente ist asynchron oder wird nach Abschluss der Funktion aufgerufen, in der sie aufgerufen wurde.

etzt habe ich diesen Blog gesucht und gefunden http: //www.bennadel.com/blog/2893-setstate-state-mutation- operation-may-be-synchronous-in-reactjs.ht)

Hier fand er dassetState ist asynchron (wird aufgerufen, wenn der Stack leer ist) oder synchron (wird aufgerufen, sobald der Stack leer ist), je nachdem, wie die Statusänderung ausgelöst wurde.

Nun, diese beiden Dinge sind schwer zu verdauen

Im Blog dassetState function wird innerhalb einer Funktion aufgerufenupdateState, aber was hat das @ ausgelöupdateStateie @ -Funktion ist nichts, was eine aufgerufene Funktion wissen würde.Warum würden sie @ machsetState async as JS ist eine Singlethread-Sprache und dieser setState ist kein WebAPI- oder Server-Aufruf, daher muss er nur auf dem JS-Thread ausgeführt werden. Tun sie dies, damit beim erneuten Rendern nicht alle Ereignis-Listener und -Dateien angehalten werden, oder gibt es ein anderes Designproblem?

Antworten auf die Frage(12)

Ihre Antwort auf die Frage