小程式自訂toast實現方法詳解【附demo源碼下載】,toastdemo
本文執行個體講述了小程式自訂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執行個體代碼點擊此處本站下載。
希望本文所述對大家小程式開發有所協助。