onclick函数在反应本机应用程序中不起作用

Sri*_*man 24 reactjs react-native

我是新来的本地人.如果用户点击文本,我编写了以下代码来调用函数.

var login = React.createClass({
     openPopup: function(){
        console.log("function called");
     },
     render: function(){
        return (
           <View onClick={this.openPopup}>
              <Text>
                 Login
              </Text>
           </View>
        );
     }
});
Run Code Online (Sandbox Code Playgroud)

上面的代码有什么问题吗?如果我单击登录文本,我在控制台中没有收到任何反馈.

编辑 这个问题是特定于原生的反应.与Stack Overflow中的任何其他问题不重复.

haz*_*ous 43

试试这个-

<TouchableOpacity onPress={this.openPopup}> 
    <View> <Text>...</Text> </View> 
</TouchableOpacity>
Run Code Online (Sandbox Code Playgroud)


pur*_*rii 31

您需要使用以下包装器组件之一.以下是列出的,跨平台可用的.

TouchableHighlight

<TouchableHighlight onPress={this.openPopup}>
    <View>...</View>
</TouchableHighlight>
Run Code Online (Sandbox Code Playgroud)

TouchableOpacity

<TouchableOpacity onPress={this.openPopup}>
    <View>...</View>
</TouchableOpacity>
Run Code Online (Sandbox Code Playgroud)

TouchableWithoutFeedback

<TouchableWithoutFeedback onPress={this.openPopup}>
    <View>...</View>
</TouchableWithoutFeedback>
Run Code Online (Sandbox Code Playgroud)