Próbuję użyć funkcji reactjs do zaktualizowania stanu, a gdy zostanie zaktualizowany, wywołaj połączenie ajaxowe żądające nowej strony. Tuż przed wywołaniem wywołania ajax ustawiana jest zmienna przesunięcia: var offset = this.state.npp * this.state.page;
Jednak znajduję się po uruchomieniu clickNextPage(), wartość this.state.page nie jest aktualizowana.Jak mogę sprawdzić, czy stan reactjs został zaktualizowany, a następnie wywołać funkcję?
Zasadniczo nie rozumiem, co się tutaj dzieje, wydaje się to stanem wyścigowym, ponieważ obserwuję zmianę stanu w mojej funkcji render() za pomocą {this.state.page}.
Jak mogę sprawdzić, czy moja strona this.state.page jest zaktualizowana, a następnie uruchomić findByName()?
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 konsoli:
clicked happend
0
1
0
Jak blisko kod zapisany tutaj do rzeczywistego kodu? Nie masz żadnych połączeń asynchronicznych, które mogą zmienić stan "state.page", zanim zostanie zaktualizowany? – Fenec