Ich habe einen Handler, der bei Änderung im Eingabefeld ausgelöst wird. Wie auch immer, wenn ich den Status auf der Konsole protokolliere resData ist 'undefiniert'? Das ist unmöglich, da console.log (body) Ergebnisse liefert.Reaktionsstatus undefiniert nach setState?
handlePersonNameChange(event) {
var resData
request('https://swapi.co/api/people/?search='+event.target.value, function (error,response,body) {
console.log(body)
resData = body
})
this.setState({personData: resData});
console.log(this.state)
}
Sie sollten den Status innerhalb des Request Callbacks festlegen. Außerdem ist das Setzen des Status in React asynchron, so dass Sie in der nächsten Zeile 'setState()' und dann 'console.log (this.state)' nicht setzen können und erwarten, dass der Status aktualisiert wird. – Jayce444
In diesem Fall erhalte ich TypeError: this.setState ist keine Funktion – elvezet13