微信小程序实现下拉刷新事件、上拉触底事件

通过Page页面事件监听下拉刷新事件、上拉触底事件

xxx.json

json 复制代码
{
  "enablePullDownRefresh": false,
  "onReachBottomDistance": 200
}

xxx.js

js 复制代码
Page({
  ...
  /**
   * page 绑定的下拉刷新
   * 页面下拉刷新事件的处理函数
   */
  onPullDownRefresh: function () {
    console.log("onPullDownRefresh");
    // 当处理完数据刷新后,wx.stopPullDownRefresh可以停止当前页面的下拉刷新。
  },
  /**
   * page 绑定的上拉触底
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    console.log("onReachBottom");
  },
  ...
})

通过scroll-view监听下拉刷新事件、上拉触底事件

xxx.wxml

xml 复制代码
<view class="container">
  <view class="page-body">
    <view class="page-section">
      <view class="page-section-title">
        <text>Vertical Scroll\n纵向滚动</text>
      </view>
      <view class="page-section-spacing">
        <scroll-view scroll-y="true" style="height: 300rpx;" bindscrolltoupper="onUpper" bindscrolltolower="onLower" refresher-enabled="{{true}}" refresher-triggered="{{refreshing}}">
          <view id="demo1" class="scroll-view-item demo-text-1"></view>
          <view id="demo2"  class="scroll-view-item demo-text-2"></view>
          <view id="demo3" class="scroll-view-item demo-text-3"></view>
        </scroll-view>
      </view>
    </view>
  </view>
</view>
  • bindscrolltoupper: 滚动到顶部时触发。当scroll-view横向时,滚动到左边时触发。
  • bindscrolltolower: 滚动到底部时触发。当scroll-view横向时,滚动到右边时触发。
  • refresher-enabled: true 开启自定义下拉刷新,false 不开启下拉刷新
  • refresher-triggered: 设置当前下拉刷新状态,true 表示下拉刷新已经被触发,false 表示下拉刷新未被触发

xxx.js

js 复制代码
Page({
  data: {
    refreshing: false
  },
  ...
  /**
   * scroll-view 组件绑定的下拉刷新
   * scroll-view 组件下拉刷新事件的处理函数
   */
  onUpper: function () {
    console.log('onUpper')
    // 当处理完数据刷新后,停止当前页面的下拉刷新。
    that.setData({
      refreshing: false
    });
  },

  /**
   * scroll-view 组件绑定的上拉触底
   * scroll-view 组件上拉触底事件的处理函数
   */
  onLower: function () {
    console.log('onLower')
  },
  ...
})

参考

微信小程序框架接口:Page
微信小程序页面配置
微信小程序组件:scroll-view

相关推荐
扶风ff6 分钟前
练题簿企业培训方案:统一题库、在线任务与岗位考核
学习·小程序
AI行业应用研究36 分钟前
会务问答机器人落地拆解:三级路由、知识库组织与防幻觉——会务小程序能自己回答参会者提问吗?
大数据·人工智能·安全·小程序·架构
盟道科技1 小时前
小程序订阅消息大规模投递实践:频控令牌池、Redis限流与失败补偿设计
分布式·算法·小程序
m0_587383001 小时前
本地同城无人机作业接单系统源码:架构拆解与抢单调度实现
java·小程序·架构·需求分析
2501_915909062 小时前
怎么用 FlutterFlow 把应用发布到 App Store?
android·ios·小程序·https·uni-app·iphone·webview
白远山16 小时前
家政服务家政社区派单实战:调度系统架构设计与实现指南
java·开发语言·小程序·架构·需求分析
微擎应用市场21 小时前
心灵馆咨询系统小程序:一站式心理咨询服务解决方案
小程序
2501_9159184121 小时前
怎么把 Python 写的 Flet 应用打包成 iOS App 并上架 App Store?
android·ios·小程序·https·uni-app·iphone·webview
Geek_Vison1 天前
小程序容器如何抹平系统差异,让一个小程序运行在 iOS、安卓、鸿蒙和电脑端
小程序·uni-app·harmonyos·mpaas
微笑的曙光1 天前
第一期 · 本地优先 MVP:不写一个后端,如何做出完整体验
微信小程序