防止多个离子警报堆叠起来

Eva*_*que 8 ionic-framework ionic2

如何检测离子2 警报ui组件实例是否已打开以便不显示另一个警报?

Eva*_*que 7

我最终为Ionic的Alert控制器编写了一个包装提供程序,如下所示:

import { Injectable } from '@angular/core';
import { AlertController } from 'ionic-angular';

@Injectable()
export class Alert {
  public alertPresented: any;
  constructor(public alertCtrl: AlertController) {
    this.alertPresented = false
  }

  present(title, subTitle) {
    let vm = this
    if(!vm.alertPresented) {
      vm.alertPresented = true
      vm.alertCtrl.create({
        title: title,
        subTitle: subTitle,
        buttons: [{
          text: 'OK',
          handler: () => {
            vm.alertPresented = false
          }
        }],
      }).present();
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

其中alertPresentedflag阻止呈现多个实例