Ich versuche reactjs zu verwenden, um einen Status zu aktualisieren, und wenn es aktualisiert ist, feuere einen Ajax-Aufruf, der eine neue Seite anfordert. Kurz bevor der Ajax-Aufruf ausgelöst wird, wird eine Offset-Variable gesetzt: var offset = this.state.npp * this.state.page;
Ich finde jedoch, nachdem clickNextPage() ausgelöst wurde, wird der Wert von this.state.page nicht aktualisiert.Wie kann ich sicherstellen, dass ein reactjs-Status aktualisiert wird, und dann eine Funktion aufrufen?
Ich verstehe im Grunde nicht, was hier passiert, das scheint eine Race Condition zu sein, weil ich die Zustandsänderung auf meiner render() Funktion mit {this.state.page} beobachte.
Wie kann ich sicherstellen, dass meine this.state.page aktualisiert wird und fireByName() ausgelöst wird?
clickNextPage: function(event){
console.log("clicked happend")
page = this.state.page;
console.log(page)
page += 1
console.log(page)
this.setState({page: page});
console.log(this.state.page)
this.findByName()
},
JS Console:
clicked happend
0
1
0
Wie nah der Code, den Sie hier, um die echten Code geschrieben hat? Haben Sie keine Async-Aufrufe, die 'state.page' vor der Aktualisierung ändern können? – Fenec