1. 程式人生 > >小程式 上拉重新整理/下拉載入

小程式 上拉重新整理/下拉載入

小程式專案中上拉重新整理下拉載入是比較常見的需求,官方文件也提供了相當友好的API,但是因為API隱藏的比較深,文件描述也比較模糊所以也折騰了一番(官方文件),在此記錄一下使用方式

onPullDownRefresh()  //使用者下拉重新整理事件,onReachBottom() //使用者上拉觸底事件

onPullDownRefresh和onReachBottom是小程式的頁面事件,官方文件描述”需要在app.jsonwindow選項中或頁面的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(){
        //觸發了上拉載入,做些什麼
    },