一個潛心研究小程式QQ群:139128168 ← 點選加群
一、微信官方預設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消失的時候有一個緩慢的動畫效果。
『咻咻咻咻duang,是不是又忘了關注~~』