当项目被映射时,获取键和项目onPressTouchableOpacity

Bha*_*ani 4 javascript reactjs react-native onpress

在下面的代码中,项目正确渲染并可以正常工作,
但是当我按下TouchableOpacity时,它将返回事件。
我使用了JSON.stringify(event.nativeEvent)但没有用

我想获取在TouchableOpacity和该项目Data上设置的键值

export default class MyLanguages extends Component {
    constructor(props) {
      super(props);
      this.state = {
        languageData: ["English","Hindi","Tamil","Telugu","Gujarati","Marathi","Panjabi"],
      };
    }
    render() {
        return (
            <View style={styles.container}>
                {this.state.languageData.map( (item,index) => {
                    return (
                        <TouchableOpacity key={index}
                            onPress={ (event)=>{
                                alert(event.nativeEvent)
                            }}>
                            <Text style={MyStyle.appFontStyle2}>{item}</Text>
                        </TouchableOpacity>
                    )}
                )}
            </View>
        )
    }
}
Run Code Online (Sandbox Code Playgroud)

hsz*_*hsz 5

item并且index仍在onPress回调的范围内,因此您可以直接引用它们:

{this.state.languageData.map((item, index) => {
  return (
    <TouchableOpacity
      key={index}
      onPress={event => {
        alert(`${index}: ${item}`);
      }}
    >
      <Text style={MyStyle.appFontStyle2}>{item}</Text>
    </TouchableOpacity>
  );
)}
Run Code Online (Sandbox Code Playgroud)