javascript 如何在react native...中关闭或解除警报框?

bttbmeg0  于 2023-01-08  发布在  Java
关注(0)|答案(4)|浏览(179)

我想在我的React原生应用程序中添加一个警报框删除操作我需要确认,如果用户点击确定,那么记录将被删除,如果用户点击取消按钮,那么警报应该关闭或解散。我可以怎么做?

Alert.alert(
  'Alert Title',
  'My Alert Msg',
  [
    {
      text: 'Cancel',
      onPress: () => console.log('Cancel Pressed'),
    },
    {
      text: 'OK', 
      onPress: () => console.log('OK Pressed')
    },
  ],
  {cancelable: false},
);
olqngx59

olqngx591#

如果您没有在取消按钮上给出任何函数调用,它将作为警报解除

pgx2nnw8

pgx2nnw82#

只需删除{cancelable: false}部分。如果您想在按钮点击时添加一些逻辑,您可以修改onPress方法,如下所示:

onPress: () => {
//your logic
}

编辑。
不,您不能以编程方式关闭警报。您必须创建一个类似于alert的模式并使用visible属性,或者使用第三方组件。

vwoqyblh

vwoqyblh3#

const showAlert = (index, photos) =>
  Alert.alert(
    "Wait !!!",
    "Are you sure you want to delete",
    [
      {
        text: "Cancel",
        style: "cancel",
      },
      {
        text: "Ok",
        onPress: () => onActionDeleteDone(index, photos,),
        // style: "cancel",
      },
    ],
    {
      cancelable: true,
    }
  );

const App = () => (
   <View style={styles.container}>
    <Button title="Show alert" onPress={showAlert} />
  </View>
);

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: "center",
    alignItems: "center"
  }
});

export default App;
zujrkrfu

zujrkrfu4#

派对迟到了

Alert.alert(
      'Title',
      `Description`,
      [
        {
          text: 'Cancel',
        },
        {
          text: 'Enable',
          onPress: () => Linking.openSettings(),
        },
      ],
      {cancelable: false},
    );

只添加取消文本,不传递任何onPress。除非你想执行一些操作,否则它会关闭模态。
如果可取消设置为true,则用户将能够在他/她点击覆盖部分时关闭警报框。

相关问题