微信小程序实战之自定义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 相关文章推荐
在IE中调用javascript打开Excel的代码(downmoon原作)
Apr 02 Javascript
基于jquery.Jcrop的头像编辑器
Mar 01 Javascript
jquery select(列表)的操作(取值/赋值)
Mar 16 Javascript
基于jquery的二级联动菜单实现代码
Apr 25 Javascript
iframe子页面与父页面在同域或不同域下的js通信
May 07 Javascript
jQuery中noConflict()用法实例分析
Feb 08 Javascript
jQuery中animate动画第二次点击事件没反应
May 07 Javascript
基于Javascript实现弹出页面效果
Jan 01 Javascript
AngularJS 2.0新特性有哪些
Feb 18 Javascript
Underscore之Array_动力节点Java学院整理
Jul 10 Javascript
浅谈angular2 组件的生命周期钩子
Aug 12 Javascript
微信公众号平台接口开发 获取微信服务器IP地址方法解析
Aug 14 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
笑谈配置,使用Smarty技术
2007/01/04 PHP
php strtotime 函数UNIX时间戳
2009/01/14 PHP
PHP mysql与mysqli事务使用说明 分享
2013/08/17 PHP
php获取参数的几种方法总结
2014/02/18 PHP
php判断数组元素中是否存在某个字符串的方法
2014/06/14 PHP
在IE模态窗口中自由查看HTML源码的方法
2007/03/08 Javascript
认识延迟时间为0的setTimeout
2008/05/16 Javascript
js常用代码段收集
2011/10/28 Javascript
使用JavaScript动态设置样式实现代码(2)
2013/01/25 Javascript
用html5 js实现点击一个按钮达到浏览器全屏效果
2014/05/28 Javascript
javascript数组输出的两种方式
2015/01/13 Javascript
jQuery Chart图表制作组件Highcharts用法详解
2016/06/01 Javascript
Angular.JS去掉访问路径URL中的#号详解
2017/03/30 Javascript
jquery 输入框查找关键字并提亮颜色的实例代码
2018/01/23 jQuery
详解vue移动端项目代码拆分记录
2019/03/15 Javascript
js使用文档就绪函数动态改变页面内容示例【innerHTML、innerText】
2019/11/07 Javascript
package.json各个属性说明详解
2020/03/11 Javascript
python数据预处理之将类别数据转换为数值的方法
2017/07/05 Python
老生常谈Python之装饰器、迭代器和生成器
2017/07/26 Python
python自动12306抢票软件实现代码
2018/02/24 Python
python 与服务器的共享文件夹交互方法
2018/12/27 Python
用python实现刷点击率的示例代码
2019/02/21 Python
浅谈Python爬虫基本套路
2019/03/25 Python
python实现的读取网页并分词功能示例
2019/10/29 Python
django中media媒体路径设置的步骤
2019/11/15 Python
Python插入Elasticsearch操作方法解析
2020/01/19 Python
Python接口开发实现步骤详解
2020/04/26 Python
Stefania Mode英国:奢华设计师和时尚服装
2017/10/23 全球购物
The North Face北面美国官网:美国著名户外品牌
2018/09/15 全球购物
Everything But Water官网:美国泳装品牌
2019/03/17 全球购物
法律专业学生的自我评价
2014/02/07 职场文书
电子商务专业应届毕业生求职信
2014/06/21 职场文书
2014年残联工作总结
2014/11/21 职场文书
七一建党节慰问信
2015/02/14 职场文书
详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)
2021/07/01 HTML / CSS
如何利用React实现图片识别App
2022/02/18 Javascript