我正在尝试使用 Alert React Native 中的组件以在 Android 和 iOS 之间创建一致的体验。我正在尝试运行示例警报。我导入了警报组件(为简洁起见省略了其他导入):
import {
Alert,
} from 'react-native';
然后我创建示例中提供的警报:
Alert.alert(
'Alert Title',
'My Alert Msg',
[
{text: 'Ask me later', onPress: () => console.log('Ask me later pressed')},
{text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel'},
{text: 'OK', onPress: () => console.log('OK Pressed')},
]
)
但是,我收到以下错误:
我找到了 this post with a similar issue , 但是,我相信我的问题是不同的,因为:
- 我正在运行 React Native 版本 0.36.1
- 我在 Android 和 iOS 上看到这个错误
我不知道如何解决这个问题。有没有其他人有幸让它在 0.36 版上运行?
更新
根据要求,这是我尝试使用警报的示例:
<TouchableHighlight style={styles.button} underlayColor='transparent' onPress={() => Alert.alert(
'Alert Title',
'Alert Message'
)}>
这只是代码失败的一个例子。我尝试了多个组件和方法的多个警报,但没有一个有效。
更新 2
值得注意的是,标准的 alert()
函数可以正常工作而不会崩溃。但是,我无法指定警报的标题。例如,下面的代码将返回标题为“Alert”的警报,消息为“请输入 4 位代码”。
alert("Invalid Code", "Please enter a 4 digit code.")
我想要的输出是标题 =“无效代码”和消息 =“请输入 4 位代码。”
最佳答案
我会尝试创建一个单独的函数来调用 Alert.alert('foo')。然后在您的 TouchableHighlight 中,使用 onPress={this.onYourFunctionName.bind(this)}
关于javascript - Alert.alert() 在 React Native 0.36.1 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41855585/