Ich beginne gerade ES6 & ReactJS von einem ES5 Hintergrund zu lernen.Kontext von 'this' in ES6
Ich habe mir mit diesem ES6-Code den Kopf verkratzt.
Code # 1:
class App extends Component {
constructor(props) {
super(props);
this.state = { videos: [] };
YTSearch({key: API_KEY, term: 'surfboard'}, function(data) {
this.setState({ videos: data }); **//I GET AN ERROR HERE!!**
});
}
render() {
return (
<div>
<SearchBar />
</div>
);
}
}
ich ein error
in this.setState
bundle.js:19826 TypeError: Cannot read property 'setState' of undefined(…)
Aber, wenn ich
Code # 2:
YTSearch({key: API_KEY, term: 'surfboard'}, (data) => {
this.setState({ videos: data }); **//I GET AN ERROR HERE!!**
});
Das funktioniert gut.
ich in erster Fall verstehen kann, der Umfang der this
in einem allgemeinen function
unterscheidet sich in einem Callback (wie AJAX). Aber wie ändert sich das in Beispiel # 2?
[Haben Sie, wissen Sie, schauen Sie in die '() => {} 'Syntax überhaupt?] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/Arrow_functions) – Marty
Danke mein Schlechter. Entschuldigen Sie mich. Ich habe gerade mit der Programmierung in reactJS/ES6 begonnen. Ich versuche nur, mich an die neue Syntax zu gewöhnen. ihr Jungs rockt! – TechnoCorner