当前位置: 移动技术网 > IT编程>开发语言>JavaScript > 微信小程序自定义toast实现方法详解【附demo源码下载】

微信小程序自定义toast实现方法详解【附demo源码下载】

2017年12月08日  | 移动技术网IT编程  | 我要评论
本文实例讲述了微信小程序自定义toast实现方法。分享给大家供大家参考,具体如下: 一、微信官方默认toast toast最常见了,几乎每个app都有这样的特效,先看下

本文实例讲述了微信小程序自定义toast实现方法。分享给大家供大家参考,具体如下:

一、微信官方默认toast

toast最常见了,几乎每个app都有这样的特效,先看下小程序自带的toast效果,立马想死的心都有了~~

微信自带toast的效果:

js文件:

wx.showtoast({
 title: '成功',
 icon: 'success',
 duration: 2000
})

用法超级简单,但官方小程序有几个问题:

只能显示success、loading两种icon

且icon不可去除

持续时间最大10秒

二、自定义toast

我们最常见的toast是偏底部,而且高度是比较小的那种~~

先看效果:

看似简单,实现起来相当不简单,如何实现:

1)建立一个公共的toast的template模板文件,因为每个页面都需要用到toast

<!-- wetoast.wxml -->
<template name="wetoast">
 <view class="wetoast {{reveal ? 'wetoast_show' : ''}}">
  <view class="wetoast__mask"></view>
  <view class="wetoast__bd {{position}}" animation="{{animationdata}}">
   <block wx:if="{{title}}">
    <view class="wetoast__bd__title {{titleclassname || ''}}">{{title}}</view>
   </block>
  </view>
 </view>
</template>

2)js主要有以下用法

核心代码:

let pages = getcurrentpages();
let curpage = pages[pages.length - 1];

这段代码是核心,getcurrentpages().length - 1 表示可以获得当前页面的page,只有获得了page,才能通过page.setdata把当前页面的数据绑定到toast上面。

核心代码:

let animation = wx.createanimation();
animation.opacity(1).step();

这段代码是toast消失的时候有一个缓慢的动画效果。

附:完整demo实例代码点击此处。

希望本文所述对大家微信小程序开发有所帮助。

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网