import { LoadingController, ToastController, AlertController } from '@ionic/angular';
import { Router } from '@angular/router';
export abstract class BaseUI {
constructor() { }
async showLoading(
loadingController: LoadingController,
message: string
) {
const loading = await loadingController.create({
message: message,
// 延迟加载由2秒改为1秒
duration: 1000
});
return await loading.present();
}
async showToast(
toastController: ToastController,
message: string
) {
const toast = await toastController.create({
message: message,
position: 'bottom',
duration: 2000
});
toast.present();
}
/**
* Toast全局提示
* @param {ToastController} toastCtrl
* @param {string} message
* @returns {toast}
* @memberof BaseUI
*/
protected async showTopToast(toastCtrl: ToastController, message: string) {
const toast = await toastCtrl.create({
cssClass: 'toastCss',
message: message,
duration: 1000, // 默认展示的时长
position: 'top', // 展示位置
color: 'light' // 颜色:蓝色
});
await toast.present();
return toast;
}
async presentAlert(
alertController: AlertController,
message: string
) {
const alert = await alertController.create({
header: '^_^温馨提示',
message: message,
buttons: ['确定']
});
await alert.present();
}
async presentAlertConfirm(
alertController: AlertController,
message: string,
router?: Router,
url?: string
) {
const alert = await alertController.create({
header: '^_^温馨提示',
message: message,
buttons: [
{
text: '取消',
role: 'cancel',
cssClass: 'secondary',
handler: (blah) => {
console.log('Confirm Cancel: blah');
}
}, {
text: '确定',
handler: () => {
if (url !== null && url !== undefined) {
router.navigateByUrl(url);
} else {
console.log('Confirm Okay');
}
}
}
]
});
await alert.present();
}
}