React-Native:单个事件处理程序方法处理事件

时间:2017-05-17 12:18:44

标签: react-native

这是多个按钮,我想用单一方法处理事件,不同的按钮调用会执行不同的操作

这是我的代码

 <Grid style={styleKeybaord.grid}>

                   <Row>
                   <Col style={styleKeybaord.column}>
                   <TouchableOpacity ref = '1' onPress = {this.abc}>
                   <Text style={styleKeybaord.text}>{STRINGS.t('keybord_1')}</Text>
                   </TouchableOpacity>
                   </Col>

                   <Col style={styleKeybaord.column}>
                   <TouchableOpacity ref = '2' onPress = {this.abc}>
                   <Text style={styleKeybaord.text}>{STRINGS.t('keybord_2')}</Text>
                   </TouchableOpacity>
                   </Col>

                   <Col style={styleKeybaord.column}>
                   <TouchableOpacity ref = '3' onPress = {this.abc}>
                   <Text style={styleKeybaord.text}>{STRINGS.t('keybord_3')}</Text>
                   </TouchableOpacity>
                   </Col>
                   </Row>
</Grid>

abc(v){

    //  Alert.alert("hhjfgdfu"+v.attr('ref'));
    }

目前,此代码无效,请提供解决方案

1 个答案:

答案 0 :(得分:0)

你可以封装你的函数来直接传递参数,就像这样。

<TouchableOpacity onPress = {() => this.abc(1)}>

然后在您的函数中直接接收ref值。

abc(ref){

  Alert.alert("hhjfgdfu"+ref);
}