微信小程序实战之自定义toast(6)


Posted in Javascript onApril 18, 2017

微信提供了一个toast的api  wx.showToast()
相关连接:https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-react.html#wxshowtoastobject 

本来是比较好的,方便使用,但是这个toast会显示出图标,而且不能去除。
假设:我们执行完业务的时候,toast一下,当执行成功的时候,效果还可以接受,如下图:

 微信小程序实战之自定义toast(6)

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

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

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

微信小程序实战之自定义toast(6)

下面介绍一个自定义的toast

效果:

微信小程序实战之自定义toast(6) 

具体实现:
wxml:

<!--按钮--> 
<view style="{{isShowToast?'position:fixed;':''}}"> 
 <view class="btn" bindtap="clickBtn">button</view> 
</view> 
 
<!--mask--> 
<view class="toast_mask" wx:if="{{isShowToast}}"></view> 
<!--以下为toast显示的内容--> 
<view class="toast_content_box" wx:if="{{isShowToast}}"> 
 <view class="toast_content"> 
 <view class="toast_content_text"> 
  {{toastText}} 
 </view> 
 </view> 
</view>

wxss:

Page { 
 background: #fff; 
} 
/*按钮*/ 
.btn { 
 font-size: 28rpx; 
 padding: 15rpx 30rpx; 
 width: 100rpx; 
 margin: 20rpx; 
 text-align: center; 
 border-radius: 10rpx; 
 border: 1px solid #000; 
} 
/*mask*/ 
.toast_mask { 
 opacity: 0; 
 width: 100%; 
 height: 100%; 
 overflow: hidden; 
 position: fixed; 
 top: 0; 
 left: 0; 
 z-index: 888; 
} 
/*toast*/ 
.toast_content_box { 
 display: flex; 
 width: 100%; 
 height: 100%; 
 justify-content: center; 
 align-items: center; 
 position: fixed; 
 z-index: 999; 
} 
.toast_content { 
 width: 50%; 
 padding: 20rpx; 
 background: rgba(0, 0, 0, 0.5); 
 border-radius: 20rpx; 
} 
.toast_content_text { 
 height: 100%; 
 width: 100%; 
 color: #fff; 
 font-size: 28rpx; 
 text-align: center; 
}

js:

Page({ 
 data: { 
 //toast默认不显示 
 isShowToast: false 
 }, 
 showToast: function () { 
 var _this = this; 
 // toast时间 
 _this.data.count = parseInt(_this.data.count) ? parseInt(_this.data.count) : 3000; 
 // 显示toast 
 _this.setData({ 
  isShowToast: true, 
 }); 
 // 定时器关闭 
 setTimeout(function () { 
  _this.setData({ 
  isShowToast: false 
  }); 
 }, _this.data.count); 
 }, 
 /* 点击按钮 */ 
 clickBtn: function () { 
 console.log("你点击了按钮") 
 //设置toast时间,toast内容 
 this.setData({ 
  count: 1500, 
  toastText: 'Michael's Toast' 
 }); 
 this.showToast(); 
 } 
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
自动生成文章摘要的代码[JavaScript 版本]
Mar 20 Javascript
Javascript面向对象编程(三) 非构造函数的继承
Aug 28 Javascript
JS动态改变表格边框宽度的方法
Mar 31 Javascript
JavaScript中字符串分割函数split用法实例
Apr 07 Javascript
JavaScript通过代码调用Flash显示的方法
Feb 02 Javascript
Seajs是什么及sea.js 由来,特点以及优势
Oct 13 Javascript
微信公众平台开发教程(四) 实例入门:机器人回复(附源码)
Dec 02 Javascript
yii form 表单提交之前JS在提交按钮的验证方法
Mar 15 Javascript
基于Vue实现timepicker
Apr 25 Javascript
JS事件流与事件处理程序实例分析
Aug 16 Javascript
vue设置导航栏、侧边栏为公共页面的例子
Nov 01 Javascript
如何使用Javascript中的this关键字
May 28 Javascript
Jquery-data的三种用法
Apr 18 #jQuery
微信小程序实战之登录页面制作(5)
Mar 30 #Javascript
Angular2数据绑定详解
Apr 18 #Javascript
微信小程序教程系列之设置标题栏和导航栏(7)
Jun 29 #Javascript
微信小程序实战之仿android fragment可滑动底部导航栏(4)
Apr 16 #Javascript
JavaScript实现前端实时搜索功能
Mar 26 #Javascript
用 js 的 selection range 操作选择区域内容和图片
Apr 18 #Javascript
You might like
建站常用13种PHP开源CMS比较
2009/08/23 PHP
php查询mysql大量数据造成内存不足的解决方法
2015/03/04 PHP
简单谈谈 php 文件锁
2017/02/19 PHP
Yii输入正确验证码却验证失败的解决方法
2017/06/06 PHP
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
JavaScript中for..in循环陷阱介绍
2013/11/12 Javascript
JS操作iframe里的dom(实例讲解)
2014/01/29 Javascript
我的Node.js学习之路(二)NPM模块管理
2014/07/06 Javascript
了不起的node.js读书笔记之node的学习总结
2014/12/22 Javascript
JavaScript中的包装对象介绍
2015/01/27 Javascript
为什么JS中eval处理JSON数据要加括号
2015/04/13 Javascript
JS自动倒计时30秒后按钮才可用(两种场景)
2015/08/31 Javascript
Node.js项目中调用JavaScript的EJS模板库的方法
2016/03/11 Javascript
JavaScript图像延迟加载库Echo.js
2016/04/05 Javascript
vue项目中用cdn优化的方法
2018/01/03 Javascript
详解webpack4升级指南以及从webpack3.x迁移
2018/06/12 Javascript
小程序实现图片移动缩放效果
2020/05/26 Javascript
[01:10]DOTA2次级职业联赛 - U5战队宣传片
2014/12/01 DOTA
[03:48]DOTA2完美大师赛主赛事第二日精彩集锦
2017/11/24 DOTA
[39:18]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第二场 12.17
2020/12/19 DOTA
零基础写python爬虫之神器正则表达式
2014/11/06 Python
详解Python中的strftime()方法的使用
2015/05/22 Python
Python实现读取txt文件并画三维图简单代码示例
2017/12/09 Python
PyQt5实现拖放功能
2018/04/25 Python
python判断完全平方数的方法
2018/11/13 Python
Python使用lambda表达式对字典排序操作示例
2019/07/25 Python
Django CBV与FBV原理及实例详解
2019/08/12 Python
pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换
2020/01/13 Python
解决python cv2.imread 读取中文路径的图片返回为None的问题
2020/06/02 Python
美国室内和室外装饰花盆购物网站:ePlanters
2019/03/22 全球购物
室内设计专业学生的自我评价分享
2013/11/27 职场文书
2014法院四风问题对照检查材料思想汇报
2014/10/04 职场文书
资料员岗位职责
2015/02/10 职场文书
基于Python实现的购物商城管理系统
2021/04/27 Python
vue整合百度地图显示指定地点信息
2022/04/06 Vue.js
Python实现简单得递归下降Parser
2022/05/02 Python