2017-03-03 13 views

答えて

19

onClickハンドラの矢印機能の使用についてはどうですか?

handleClick = (e, data) => { 
    // access to e.target here 
    console.log(data); 
} 

<input type="checkbox" value={data.id} defaultChecked={false} onClick={((e) => this.handleClick(e, data))}/> 
+1

それは動作します...ありがとうございます。 –

+0

、そのイベントリスナーを削除したい場合、どうすればいいですか? –

+0

削除すると、何も起こらないということですか?いくつかの小道具が設定されているかどうかをチェックしてから、ちょうど戻ってくるあなたのhandleClick関数で、if-checkを持つことができます。それは理にかなっていますか? –

1

まず、あなたがnullをバインドする場合は、任意のコンテキストもたUIEventオブジェクトを取得することはできません。

onClickを 'onClick = {this.handleClick}'に変更する必要があります。

そして、あなたのハンドル機能が

handleClick = (event) => { 
    const { target: { value } } = event; 

    // And do whatever you need with it's value, for example change state 
    this.setState({ someProperty: value }); 
}; 
1

のようになります。このコードのバリエーションを試してみてください:

handleClick = (data, e) => { 
    console.log(e.target.value, data); 
} 

<input type="checkbox" value={data.id} defaultChecked={false} onClick={this.handleClick.bind(this, data)}/> 
関連する問題