Ich bin ziemlich neu mit reagieren und mache wahrscheinlich einen dummen Fehler. Ich versuche einen Api Call mit Axios zu machen, der ein Versprechen zurückgibt. Wenn dieses Versprechen verrechnet wird, möchte ich das Ergebnis davon an eine Funktion übergeben, die den Status für das übergeordnete Element durch einen Rückruf aktualisiert. Es scheint jedoch, dass "das" weg ist, da ich undefiniert werde. Ich denke, wie es in der Zukunft gelöst wird, gibt es keinen "diesen" Kontext mehr? Ich kann es umgehen, indem ich den Callback einem Temp zuweise und das benutze, aber es fühlt sich plump an. Hier ist der Code:reagieren verliert 'diesen' Kontext innerhalb Versprechen
axios.get(url)
.then(function(response) {
this.props.handler(response.data.thing)
})
.catch(function(error) {
console.log(error)
})
das funktioniert.
let handler = this.props.handler
axios.get(url)
.then(function(response) {
handler(response.data.word)
})
.catch(function(error) {
console.log(error)
})
Ja! Vielen Dank. Vergessen Sie alles über sie. Neu auch für es6. – user1584120
@ user1584120 Kein Problem! Wenn Sie glauben, dass es Ihnen geholfen hat, die Antwort zu akzeptieren. Froh, dass es geholfen hat !! –
Ich werde, Sie müssen ziemlich schnell geantwortet haben, da es mich nicht für weitere 3 Minuten akzeptieren lässt – user1584120