我有以下代码:
import React, {Component} from 'react';
import {Platform, ScrollView, StyleSheet, Text, TextInput, TouchableOpacity, View,} from 'react-native';
import {Alert} from "react-native-web";
export default class HomeScreen extends Component {
state = {text: ''};
_onPressSearch() {
Alert.alert("Button pressed!")
}
render() {
return (<View style={styles.container}>
<ScrollView style={styles.scrollViewContainer} contentContainerStyle={styles.contentContainer}>
<View style={styles.searchContainer}>
<TextInput placeHolder="Type something!" onChangeText={(text) => this.setState({text})}
value={this.state.text}/>
</View>
<TouchableOpacity
onPress={this._onPressSearch}>
<View>
<Text>Search</Text>
</View>
</TouchableOpacity>
<View style={styles.listContainer}>
<Text>{this.state.text}</Text>
</View>
</ScrollView>
</View>
我的问题是,当我单击TouchableOpacity时,没有任何动作(在我的情况下显示警报)。我试图将ToachableOpacity和View组合更改为常规按钮,但没有再发生任何变化。那么,有什么问题,我该如何解决?
答案 0 :(得分:1)
看文档似乎Alert
内的react-native-web
尚未完成(https://github.com/necolas/react-native-web)。
这是关于react-native-web警报的问题:https://github.com/necolas/react-native-web/issues/1026
尝试使用默认的JavaScript警报执行alert("Button pressed!")
或从react-native导入Alert
代码看起来不错