私は反応ネイティブでリストを作成しており、各要素はクリック可能です。要素がクリックされると、別のシーンにナビゲートし、クリックされた要素と 'i'の値に基づいてオブジェクトを渡します。ReactネイティブリストonPress "i"を使用して間違ったオブジェクトを送信する
要素をクリックすると、「終了」したオブジェクトが常に送信されます。どちらが理にかなっている。
constructor(props) {
super(props);
this.state = {
items: this.props.items
};
}
makeList() {
var items = []
for (var i = 0; i <3; i++) {
items.push(
<TouchableOpacity
activeOpacity={0.6}
onPress={() => this.sendItem(this.state.items[i])}>
<View>this.state.items[i].name</View>
</TouchableOpacity>
)
}
return items;
}
render() {
return (
<View>
{this.makeList()}
</View>
);
}
sendItem(item) {
this.props.navigate(item);
}
アイテムのいずれかがクリックされるたびに常に「4」が送信されます。
これを修正して正しいオブジェクトを送信するにはどうすればよいですか?
ありがとうございました!
'this.state.items'は指定されたコードに存在しません。あなたが書いたとおりにコードを詳しく記述してください。現在、コードに状態オブジェクトは表示されません。 –
@CarlMarkham何が変わっていくのか見てみよう。 –