インデックスを渡しながら関数を呼び出そうとしていますが、ラムダをonclickハンドラに渡すのはベストプラクティスではありません。これを処理するより良い方法はありますか?今は毎回作成される関数ではないからですか?関数を呼び出してマップ関数からパラメータを渡す方法
ラムダの削除トランジション中に状態を更新するリスクがあります。トランジション中に関数が無限に呼び出される可能性があります。
class MyComponent extends React.Component {
constructor(props, context) {
super(props, context);
this.myFunc= this.myFunc.bind(this);
}
myFunc(index){
//do stuff with the index
}
render(){
const items = this.props.list.map((listItem, index) =>
return <div key={listItem.id} onClick={() => this.myFunc(index)}>{listItem.name}</div>
);
return(
<div>{items}</div>
)
}
}
'のonClick = {this.myFunc(インデックス)} ' –