Gegeben:Ist SetState eine Queue-Datenstruktur?
this.setState({"data1": ''});
this.setState({"data2": ''});
this.setState({"data3": ''}, this.runMeAfterAllStateUpdatesComplete);
Ist setState
eine Warteschlange Datenstruktur (FIFO)? Mit anderen Worten, ist der obige Code sicher, dass runMeAfterAllStateUpdatesComplete
unter allen Umständen zuletzt läuft? Oder muß ich den Code als eine Reihe von Rückrufen schreiben:
this.setState({"data1": ''}, this.setNext);
setNext(){
this.setState({"data2": ''}, this.setNextNext);
}
setNextNext() {
this.setState({"data3": ''}, this.runMeAfterAllStateUpdatesComplete);
}
oder alternativ und unter der Annahme idempotence:
this.setState({"accrualName": ''}, this.runMeAfterAllStateUpdatesComplete);
this.setState({"accrueRate": ''}, this.runMeAfterAllStateUpdatesComplete);
this.setState({"hoursPer": ''}, this.runMeAfterAllStateUpdatesComplete);
Might Blick in die 'componentDidUpdate' Haken wert sein. Dies wird unmittelbar nach dem Übergeben der Aktualisierungen an DOM aufgerufen. Dies könnte ein besseres Zuhause für 'runMeAfterAllStateUpdatesComplete()' sein – lux