ionic中的ToastController小弹窗用法

ToastController

1.Toast 是现代应用中常用的微妙通知。 它可用于提供有关操作的反馈或显示系统消息。 应用程式的内容会显示Toast ,应用程式可以将其关闭,以恢复使用者与应用程式的互动。

Creating-创建

所有的toast选项都应该在create方法的第一个参数中传递:create(opts)。 要显示的消息应在消息属性中传递。 showCloseButton选项可以设置为true,以便在toast(提示框)上显示一个关闭按钮。 有关所有可用选项,请参阅下面的create方法。

Positioning-定位

toast可以定位在视图端口的顶部,底部或中间top, bottom and middle。 该位置可以传递给Toast.create(opts)方法。 position选项是一个字符串,接受的值是顶部,底部和中间。 如果未指定位置,则会在视图端口的底部显示toast。

Dismissing驳回销毁

在特定时间之后,toast可以通过传送毫秒数来在toast选项的持续时间内自动关闭。 如果showCloseButton设置为true,那么关闭按钮将关闭toast。 要在创建后关闭toast,请在Toast实例上调用dismiss()方法。 可以调用onDidDismiss函数来在Toast被关闭之后执行一个操作。

Usage-用法

import { ToastController } from 'ionic-angular';

constructor(private toastCtrl: ToastController) {

}

presentToast() {
  let toast = this.toastCtrl.create({
    message: '某个特定的时间弹出,比如密码错误的时候弹出',
    duration: 3000,//3秒后自动消失
    position: 'top'//位置
    showCloseButton:true,
    closeButtonText:"关闭"
});
 toast.onDidDismiss(() => { 
console.log('toast被关闭之后执行'); 
}); 
toast.present();//符合触发条件后立即执行显示。一定不能忘了这个
 }

效果:
注意:当快速点击,或者操作过快湖出现这个问题,原因是触发弹框后,弹框的hide()方法还没有触发,触发的弹框的事件已经关闭就会造成弹框的hide()方法无法触发
解决方法是:加个关闭按钮,出现这种情况的时候手动关闭

在使用的时候一个页面往往需要多个toast,这个时候可以将创建toast的方法封装,然后去调用就好了
例如:
封装:

private popToastView(message: string, duration: number) {
  this.toastController.create({
    message: message,
    position: 'middle',
    duration: duration,
    showCloseButton:true,
    closeButtonText:"关闭"
  }).present();
}
this.popToastView("手机号不能为空",2000);

Instance Members-实例成员

Create a new toast component. See options below

Param Type Details
opts ToastOptions

Toast options. See the below table for available options.

|

属性 类型 默认值 说明
message string - toast的信息。 长串将包裹,toast容器将展开。
duration number - 在隐藏toast之前等待几秒。默认情况下,将会在dismiss()方法被调用的时候关闭
position string "bottom" toast 在屏幕上的位置接受三个参数值 values: "top", "middle", "bottom".
cssClass string - 自定义样式类
showCloseButton boolean false 是否需要一个button 去关闭 toast.
closeButtonText string "Close" 关闭按钮上显示的文字
dismissOnPageChange boolean false 是否在导航到新页面时销毁toast
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,323评论 19 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,195评论 4 61
  • 一帘幽梦攒玉珠 奔流千年不曾腐 魂梦相绕今越古 功过是非尘泥悟
    照山阅读 2,675评论 0 5
  • 最近项目中碰到一个问题, 需要指定某个类中的所有级别日志输出至单独的日志文件中,且别的日志文件中没有这个类的日志信...
    许可_阅读 1,183评论 0 1
  • 时隔一个月又四天,重新拿笔,又生疏了。 本来就没有基础,还不勤奋练习。要用什么方法,才能彻底改变三天晒网的坏习惯。
    jokey徐阅读 1,404评论 3 1