React関数内でReactクラスの状態を参照しながらAJAXリクエストを作成しています。しかし、AJAXリクエストを入力すると、状態への参照が未定義のTypeErrorが発生します。ReactJSとAJAX Uncaught TypeError:プロパティ 'bugs' of Undefinedを読み取ることができません
ここに私のコードスニペットはだ、私は「どこでコンテキストを失っていますここで続行する方法が不明メートル
class BugList extends React.Component {
constructor() {
super();
this.state = {
bugs: [],
};
}
addBug(bug) {
$.ajax({
type: 'POST', url: '/api/bugs', contentType: 'application/json', data:JSON.stringify(bug),
success: function(data) {
var bug = data;
var bugsModified = this.state.bugs.concat(bug);
this.setState({bugs: bugsModified});
}.bind(this),
error: function(xhr, status, err) {
console.log("error adding bug: ", err);
}
});
}
componentDidMount() {
$.ajax('/api/bugs').done(function(data) {
this.setState({bugs: data})
}.bind(this));
}
render() {
return(
<div>
<h1>Bug Tracker</h1>
<BugFilter />
<hr />
<BugTable bugs={this.state.bugs}/>
<hr />
<BugAdd addBug={this.addBug}/>
</div>
);
}
}
問題の問題行:。?
var bugsModified = this.state.bugs.concat(bug);
エラーログ:
Uncaught TypeError: Cannot read property 'bugs' of undefined