レンダリングする必要がある要素のリストを返すプロバイダがあります。このリストの各項目には、選択した要素に基づいて何らかのアクションを実行するボタンが隣接している必要があります。私は<のp>タグにあった情報を必要とし、私のクリックハンドラでforループでレンダリングされたReactコンポーネントのインデックスを取得する方法
render(){
<div name="enclosing div">
{this._renderList()}
</div>
}
_renderList(){
var result = [];
var i = 0;
for (i; i < this.mylist.length; ++i) {
result.push(<p> {this.myList[i]} </p>);
result.push(<Button onClick={() => this.clicked(params) } />);
}
return result;
}
:私はそうのように、このビューをレンダリングしています。私は、このアプローチが働くだろうと思った:
<Button onClick ={() => this.clicked(i)} />
をしかし、私はこれを行う際に、私は、クリック時に= mylist.length常に。
<Button index={i} onClick = {...} />
をしかし、私はどのようにのonClickへのインデックスから私を渡すには考えている実現:
ので、次の、私は私のボタンがそうのような重要な特性を保持したと思いました。これどうやってするの?
このリストの表示に間違っていますか?
キーが反応ではかなり特殊なプロパティですあなたが小道具を使ってそれにアクセスすることができるかどうか、あるいはあなたがラウンドアバウトの道を進む必要があるかどうかは分かりません。私は 'index'のようなものをおそらく使用し、子供の中で' this.props.index'を求めます。 –