私はthis codeに就職しようとしています。ES6 Reactプロパティが定義されていません
/*
* A simple React component
*/
class Application extends React.Component {
num = 42;
render() {
return (
<button onClick={this.show}>show</button>
);
}
componentDidMount() {
console.log(this.num);
}
show() {
console.log(this.num);
}
}
/*
* Render the above component into the div#app
*/
React.render(<Application />, document.getElementById('app'));
問題は、プロパティの値を取得するためにボタンをクリックすると、定義されていません。興味深い部分はComponentDidMount()
関数がnum
値にアクセスできることです。
私はshow()
関数が異なるコンテキストを持っていると思うので、num
をthis
というキーワードで参照することはできません。私はコンストラクタのnum
値をバインドしようとしましたが、どちらも機能しませんでしたので削除しました。
ボタンをクリックしてnum
の値を取得するにはどうすればよいですか?
関連:受け入れ答えは悪い習慣がこれを見提供[?コールバックの内側に正しい 'this' /コンテキストにアクセスする方法](http://stackoverflow.com/q/20279484/218196) –