小程式 上拉重新整理/下拉載入
阿新 • • 發佈:2019-01-09
小程式專案中上拉重新整理下拉載入是比較常見的需求,官方文件也提供了相當友好的API,但是因為API隱藏的比較深,文件描述也比較模糊所以也折騰了一番(官方文件),在此記錄一下使用方式
onPullDownRefresh() //使用者下拉重新整理事件,onReachBottom() //使用者上拉觸底事件
onPullDownRefresh和onReachBottom是小程式的頁面事件,官方文件描述”需要在app.json
的window
選項中或頁面的json檔案中開啟enablePullDownRefresh
“,個人覺得還是在頁面配置較好,畢竟不是每個頁面都需要上拉重新整理事件,
//json配置 { "usingComponents": {}, "backgroundTextStyle":"dark",//dark:顯示重新整理動畫 "enablePullDownRefresh":true,//允許下拉重新整理
"onReachBottomDistance":50//距離底部多少px時觸發上拉載入事件
}
使用方法
官方文件:”可以通過wx.startPullDownRefresh
觸發下拉重新整理,呼叫後觸發下拉重新整理動畫,效果與使用者手動下拉重新整理一致“,
意思是既可以通過使用者滑動觸發,也可以通過wx.startPullDownRefresh()
呼叫的方式執行onPullDownRefresh()方法,程式碼如下
onShow() { setTimeout(()=>{ //方法呼叫的方式觸發下拉重新整理事件 wx.startPullDownRefresh() },1000) }, /** * 下滑重新整理事件 */ onPullDownRefresh() { //做些什麼... wx.stopPullDownRefresh()//得到結果後關掉重新整理動畫 },
上拉載入事件需要使用者滑動,當距離頁面底部的值到onReachBottomDistance的設定引數時,便會觸發,程式碼如下
/** * 上拉載入 */ onReachBottom(){ //做些什麼 ...... },
最後看一個整體的程式碼
onShow() { setTimeout(()=>{ wx.startPullDownRefresh()//通過方法呼叫重新整理 },1000) }, /** * 下滑重新整理事件 */ onPullDownRefresh() { wx.stopPullDownRefresh()//結束重新整理 }, /** * 上拉載入 */ onReachBottom(){ //觸發了上拉載入,做些什麼 },