我已在toast
项目中使用ToastController
实施了ionic2
。目前,我遇到了重复的toast
邮件问题。有没有办法阻止ionic2 / angular2
(注意:重复意味着当我点击一个按钮时我正在显示一个祝酒词,如果我多次点击同一个按钮,那么toast消息会重叠)?
export class <className>{
constructor(private toast:ToastController){
}
showToast(message) {
let toast = this.toastCtrl.create({
message: message,
duration: 2000,
position: 'bottom'
})
toast.present();
}
}
我在点击按钮时调用此方法。
答案 0 :(得分:4)
您可以使用该页面中的属性来保留Toast的实例。然后,在显示祝酒词之后,验证是否正在显示另一个。
import { ToastController, Toast } from 'ionic-angular';
// ...
private toastInstance: Toast;
constructor(private toastCtrl: ToastController) { }
presentToast() {
if(this.toastInstance) {
return;
}
this.toastInstance = this.toastCtrl.create({
message: 'User was added successfully',
duration: 3000,
position: 'top'
});
this.toastInstance.onDidDismiss(() => {
this.toastInstance = null;
});
this.toastInstance.present();
}