web-dev-qa-db-fra.com

Comment ne pas fermer la boîte d'alerte lorsque vous cliquez en dehors de celle-ci sur Ionic

Je crée une application ionic 2 et j'utilise le composant suivant

http://ionicframework.com/docs/components/#alert

  import { AlertController } from 'ionic-angular';

export class MyPage {
  constructor(public alertCtrl: AlertController) {
  }

  showAlert() {
    let alert = this.alertCtrl.create({
      title: 'New Friend!',
      subTitle: 'Your friend, Obi wan Kenobi, just accepted your friend request!',
      buttons: ['OK']
    });
    alert.present();
  }
}

Comment puis-je m'assurer que lorsque je clique en dehors de la zone, l'alerte n'est pas rejetée?

18
Ricardo Parro

Ionic 2/3:

Comme vous pouvez le voir dans les documents AlertController , vous pouvez utiliser l'option enableBackdropDismiss (booléen) lors de la création de l'alerte:

enableBackdropDismiss : indique si l'alerte doit être ignorée en appuyant sur le fond. Vrai par défaut

import { AlertController } from 'ionic-angular';

// ...
export class MyPage {

  constructor(public alertCtrl: AlertController) {}

  showAlert() {
    let alert = this.alertCtrl.create({
      title: 'New Friend!',
      subTitle: 'Your friend, Obi wan Kenobi, just accepted your friend request!',
      buttons: ['OK'],
      enableBackdropDismiss: false // <- Here! :)
    });

    alert.present();
  }
}

Ionic 4:

Dans Ionic 4 cette propriété a été renommé backdropDismiss:

backdropDismiss : Si true, l'alerte sera ignorée lorsque vous cliquez sur le fond.

import { AlertController } from '@ionic/angular';

//...
export class MyPage {

  constructor(public alertController: AlertController) {}

  async showAlert() {
    const alert = await this.alertController.create({
      header: 'Alert',
      subHeader: 'Subtitle',
      message: 'This is an alert message.',
      buttons: ['OK'],
      backdropDismiss: false // <- Here! :)
    });

    await alert.present();
  }
}
39
sebaferreras

Dans ionic 4, l'option a été renommée en

backdropDismiss: false
10
Pete

Définissez enableBackdropDismiss: false dans les options alertCtrl.create

1
amuramoto