19

需要写一个小程序下拉刷新效果,本以为应该很简单的东西,没想到微信在这个地方有点小坑😜,废话不多,直接上步骤,手把手教大家怎么用。

1、需要在.json文件里设置 "enablePullDownRefresh": true,用于开启页面下拉加载效果,可以当前页设置也可以全局设置;

{
    "enablePullDownRefresh": true //当前页
    "backgroundTextStyle": "dark" //顶部显示颜色为深色的三个点
}

or

 "window": {
    "enablePullDownRefresh": true //全局
    "backgroundTextStyle": "dark" //顶部显示颜色为白色的三个点
  }

2、注意在开发工具中模拟下拉动作时mac触摸板需要点击同时下拉才能模拟下拉动作,直接双指下拉不行;

3、第一设置好后用onPullDownRefresh()函数监听下拉动作,注意页面可能已经有默认的onPullDownRefresh()函数存在,需要去重;

  /**
  * 页面相关事件处理函数--监听用户下拉动作
  */
  onPullDownRefresh: function () {
 
  }

4、重置页面初始数据+调用onLoad()函数制作重新加载效果;

  onPullDownRefresh: function () {
    var that = this;
    that.setData({
      currentTab: 0 //当前页的一些初始数据,视业务需求而定
    })
    this.onLoad(); //重新加载onLoad()
  },

5、此时下拉刷新已经ok,但是还可以再优化下:onLoad()函数开头时设置wx.stopPullDownRefresh()停止下拉刷新效果,这样刷新完后就不会继续显示那三个点了~( ̄▽ ̄)~。

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    wx.stopPullDownRefresh() //刷新完成后停止下拉刷新动效
    //后面的业务代码大家自行发挥
  },

lanletter
110 声望2 粉丝