首页 > 课堂 > 小程序 > 正文

微信小程序开发之自定义toast实例讲解

2020-03-21 16:25:17
字体:
来源:转载
供稿:网友

本来是比较好的,方便使用,但是这个toast会显示出图标,而且不能去除。

假设:我们执行完业务的时候,toast一下,当执行成功的时候,效果还可以接受,如下图:

微信小程序,小程序开发,toast

但是,当执行失败的时候,如下图:

失败了,你还显示个扣扣图案,那到底是成功还是失败??这肯定是不能接受的。【捂脸】

若是给老板看到这种效果,又是一顿臭骂,程序猿的委屈哭

微信小程序,小程序开发,toast

下面介绍一个自定义的toast

效果:

微信小程序,小程序开发,toast

具体实现:

wxml:

  1. button 
  2.  
  3. {{toastText}} 

wxss:

  1. Page { 
  2.  
  3. background#fff
  4.  
  5.  
  6. /*按钮*/ 
  7.  
  8. .btn { 
  9.  
  10. font-size28rpx; 
  11.  
  12. padding15rpx 30rpx; 
  13.  
  14. width100rpx; 
  15.  
  16. margin20rpx; 
  17.  
  18. text-aligncenter
  19.  
  20. border-radius: 10rpx; 
  21.  
  22. border1px solid #000
  23.  
  24.  
  25. /*mask*/ 
  26.  
  27. .toast_mask { 
  28.  
  29. opacity: 0
  30.  
  31. width100%
  32.  
  33. height100%
  34.  
  35. overflowhidden
  36.  
  37. positionfixed
  38.  
  39. top: 0
  40.  
  41. left: 0
  42.  
  43. z-index888
  44.  
  45.  
  46. /*toast*/ 
  47.  
  48. .toast_content_box { 
  49.  
  50. display: flex; 
  51.  
  52. width100%
  53.  
  54. height100%
  55.  
  56. justify-contentcenter
  57.  
  58. align-items: center
  59.  
  60. positionfixed
  61.  
  62. z-index999
  63.  
  64.  
  65. .toast_content { 
  66.  
  67. width50%
  68.  
  69. padding20rpx; 
  70.  
  71. background: rgba(0000.5); 
  72.  
  73. border-radius: 20rpx; 
  74.  
  75.  
  76. .toast_content_text { 
  77.  
  78. height100%
  79.  
  80. width100%
  81.  
  82. color#fff
  83.  
  84. font-size28rpx; 
  85.  
  86. text-aligncenter
  87.  

js:

  1. Page({ 
  2.  
  3. data: { 
  4.  
  5. //toast默认不显示 
  6.  
  7. isShowToast: false 
  8.  
  9. }, 
  10.  
  11. showToast: function () { 
  12.  
  13. var _this = this
  14.  
  15. // toast时间 
  16.  
  17. _this.data.count = parseInt(_this.data.count) ? parseInt(_this.data.count) : 3000; 
  18.  
  19. // 显示toast 
  20.  
  21. _this.setData({ 
  22.  
  23. isShowToast: true
  24.  
  25. }); 
  26.  
  27. // 定时器关闭 
  28.  
  29. setTimeout(function () { 
  30.  
  31. _this.setData({ 
  32.  
  33. isShowToast: false 
  34.  
  35. }); 
  36.  
  37. }, _this.data.count); 
  38.  
  39. }, 
  40.  
  41. /* 点击按钮 */ 
  42.  
  43. clickBtn: function () { 
  44.  
  45. console.log("你点击了按钮"
  46.  
  47. //设置toast时间,toast内容 
  48.  
  49. this.setData({ 
  50.  
  51. count: 1500, 
  52.  
  53. toastText: 'Michael’s Toast' 
  54.  
  55. }); 
  56.  
  57. this.showToast(); 
  58.  
  59.  
  60. }) 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表