小程序API —— 56页面处理函数 - 下拉刷新

下拉刷新时小程序中常见的一种刷新方式,当用户下拉页面的时候,页面会自动刷新,以便用户获取最新的内容;

小程序中实现下拉刷新的方式:

  1. 在 app.json 或者 page.json 中开启允许下拉,同时可以配置窗口、loading 样式等;
  2. 在 页面.js 中定义 onPullDownRefresh 事件监听用户下拉刷新;

下面打开微信开发者工具来配置一下下拉刷新功能:

  • 在 pages/cate/cate.json 中配置允许下拉:

    yaml 复制代码
    {
      "usingComponents": {},
      "onReachBottomDistance": 100,
      "enablePullDownRefresh": true,
      "backgroundColor": "#efefef",
      "backgroundTextStyle": "light" 
    }

    点击编译,下拉页面,可以看到页面允许下拉,下拉窗口背景颜色为 #efefef,下拉窗口 loading 颜色为 light,如下:

  • 在 pages/cate/cate.js 中定义一个下拉刷新事件处理函数,如下所示:

    javascript 复制代码
      // 监听用户下拉刷新
      onPullDownRefresh(){
        console.log("监听用户下拉刷新")
      }
    })

    点击编译,下拉页面,可以看到 Console 区域打印了对应的信息,如下所示:

结合上一节(小程序API ------ 55页面处理函数 -上拉加载)内容,实现下面的需求:当用户上拉加载更多以后,如果用户进行下拉刷新,需要将数据重置:

  • 在 pages/cate/cate.js 中添加对应的刷新逻辑,如下所示:

    javascript 复制代码
      // 监听用户下拉刷新
      onPullDownRefresh(){
        // console.log("监听用户下拉刷新")
    
        // 当用户上拉加载更多以后,如果用户进行了下拉刷新,需要将数据进行重置
        this.setData({
          numList: [1, 2, 3]
        })
    
        // 下拉刷新以后,loading 效果有可能不会弹回去
        if(this.data.numList.length === 3){
          wx.stopPullDownRefresh()
        }
      }
  • 点击编译,先下拉页面更新当前展示数据,然后刷新页面,可以看到当前数字重新变为 [1, 2, 3],如下所示:

参考视频:尚硅谷微信小程序开发教程

相关推荐
2501_9159184111 分钟前
只有 Flutter IPA 文件,通过多工具组合完成有效混淆与保护
android·flutter·ios·小程序·uni-app·iphone·webview
hello kitty w5 小时前
2. 微信开发工具快捷键
小程序
计算机毕设指导66 小时前
基于微信小程序的丽江市旅游分享系统【源码文末联系】
java·spring boot·微信小程序·小程序·tomcat·maven·旅游
1024小神6 小时前
浏览器或小程序限制字体最小12px解决办法
小程序
内存不泄露7 小时前
酒店预订管理平台及小程序
小程序
2501_915918417 小时前
除了 Perfdog,如何在 Windows 环境中完成 iOS App 的性能测试工作
android·ios·小程序·https·uni-app·iphone·webview
weixin_lynhgworld8 小时前
[特殊字符]短剧小程序开发:开启娱乐新纪元的钥匙[特殊字符]
小程序
qq_12498707539 小时前
基于Spring Boot的“味蕾探索”线上零食购物平台的设计与实现(源码+论文+部署+安装)
java·前端·数据库·spring boot·后端·小程序
m0_471199639 小时前
【小程序】订单数据缓存 以及针对海量库存数据的 懒加载+数据分片 的具体实现方式
前端·vue.js·小程序
難釋懷9 小时前
微信小程序案例 - 自定义 tabBar
微信小程序·小程序·notepad++