私が反応学び、そしてあなたがview here in CodePen.React:なぜonClickハンドラで矢印関数が使用されていますか?
私は矢印の機能が内部に戻されている広場コンポーネントのonClick
プロパティでどのように機能するかについて混乱していますすることができ、単純な三目並べゲームを作成するためにthis tutorialを踏襲していますボードコンポーネントのrenderSquare
機能の説明:onClick={() => this.props.onClick(i)}
。また、同様に私はonClick={ (i) => this.handleClick(i)}
を持っているゲームコンポーネントも同様です。私は矢の機能なしでそれを書くことができると思った(ちょうどonClick={this.handleClick(i)}
のように)が、これはゲームを壊す。
ラフ説明パラメーターを結合する役割を行う: 'onClick'イベントトリガで実行される関数を取ります。 '()=> this.foobar(blah)'が実行されると、*は引数blahで 'foobar'を実行する矢印関数*を作成します。あなたが '{this.foobar(blah)} 'を実行できないのは、それが関数を実行して戻り値を渡すからです。 'onClick'は値ではなく、関数executeを必要とします。 – Li357
これを参照してください:http://stackoverflow.com/questions/29810914/react-js-onclick-cant-pass-value-to-method – Jayce444
https://facebook.github.io/ react/docs/handling-events.html – Calvin