gpt4 book ai didi

android - React Native Alert.alert() 仅适用于 iOS 和 Android,不适用于 Web

转载 作者:行者123 更新时间:2023-12-04 17:22:19 26 4
gpt4 key购买 nike

我刚开始学习和练习 React Native,我遇到了第一个我自己似乎无法解决的问题。
我有以下代码,非常简单,但是当我在网络上运行时 Alert.alert() 不起作用。如果我单击该按钮,则没有任何 react ,但是,当我单击 iOS 或 android 模拟器上的按钮时,它可以正常工作。

import { StatusBar } from 'expo-status-bar';
import React from 'react';
import { StyleSheet, Text, Button, View, Alert } from 'react-native';

export default function App() {
return (
<View style={styles.container}>
<Text style={styles.headerStyle} >Practice App</Text>
<Text style={{padding: 10}}>Open up App.js to start working on your app!</Text>
<Button
onPress={() => alert('Hello, Nice To Meet You :)')}
title="Greet Me"
/>
<StatusBar style="auto" />
</View>
);
}
我也知道 alert() 适用于所有三种设备,但是,我想了解为什么 Alert.alert() 仅适用于 iOS 和 Android。
我的问题更多是为了理解而不是找到解决方案。是使用 alert() 的唯一解决方案,还是我以错误的方式实现 Alert.alert()?

最佳答案

React Native 是适用于 Android、iOS 和 Web 的开源移动应用程序框架,但没有 警报组件 对于 Web,但我找到了一个可以为您提供解决方案的包。那就是安装包

npm i react-native-awesome-alerts
这个例子会帮助你
import React from "react";
import { StyleSheet, Text, View, TouchableOpacity } from "react-native";
import Alert from "react-native-awesome-alerts";
export default class App extends React.Component {
constructor(props) {
super(props);
this.state = { showAlert: false };
}

showAlert = () => {
this.setState({
showAlert: true,
});
};

hideAlert = () => {
this.setState({
showAlert: false,
});
};

render() {
const { showAlert } = this.state;

return (
<View style={styles.container}>
<Text>Practice App</Text>
<Text style={{ padding: 10 }}>
Open up App.js to start working on your app!
</Text>
<TouchableOpacity
onPress={() => {
this.showAlert();
}}
>
<View style={styles.button}>
<Text style={styles.text}>Greet Me</Text>
</View>
</TouchableOpacity>

<Alert
show={showAlert}
message="Hello, Nice To Meet You :"
closeOnTouchOutside={true}
/>
</View>
);
}
}

const styles = StyleSheet.create({
container: {
flex: 1,
alignItems: "center",
justifyContent: "center",
backgroundColor: "#fff",
},
button: {
margin: 10,
paddingHorizontal: 10,
paddingVertical: 7,
borderRadius: 5,
backgroundColor: "#AEDEF4",
},
text: {
color: "#fff",
fontSize: 15,
},
});
enter image description here

关于android - React Native Alert.alert() 仅适用于 iOS 和 Android,不适用于 Web,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65481226/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com