微信小程序两种下拉刷新和上拉加载全面分析和应用

简介: 手机端APP或者是微信小程序再或者是H5要做分页只能通过下拉刷新或者上拉加载来实现,毕竟不是PC端那样大的视觉感,相比较而言难度更大的就是手机端APP上了,需要自行判断距离来计算下拉高度和上拉高度,逻辑事件也比较繁琐,而相对于H5或者是小程序端有着系统的方法,我们可以直接拿来即用来达到我们的需求,今天我们的**主题**就是——微信小程序的上拉加载与下拉刷新

👦个人简介:张清悠,字澄澈,号寻梦客,爱好旅行、运动,主攻前端方向技术研发,副攻Unity 3D、C++、Python人工智能等
📝个人寄语:学会不为过程的缓慢而焦虑,即使暂时未能如你所愿,但只要你在努力,你就在不断成长!
🙏个人公众号:清悠小猿(海量源码尽在其中,欢迎关注)

一、前言:

手机端APP或者是微信小程序再或者是H5要做分页只能通过下拉刷新或者上拉加载来实现,毕竟不是PC端那样大的视觉感,相比较而言难度更大的就是手机端APP上了,需要自行判断距离来计算下拉高度和上拉高度,逻辑事件也比较繁琐,而相对于H5或者是小程序端有着系统的方法,我们可以直接拿来即用来达到我们的需求,今天我们的主题就是——微信小程序的上拉加载与下拉刷新

二、需求分析:

前段时间接手了一个小程序迭代的项目,由于当初用户不是很大,没有做分页的效果,导致操作不当直接把服务器干掉了,这个小程序的主要作用就是发布任务抢单,由于后台发布人操作不当把时间写错直接出几万条的数据,再一下子把服气干崩了,用户不多服务器的内存也不大,所以才出现了,这种情况,下面分析一下需求,就是有列表的页面都要加上分页功能就是所谓的上拉加载和下拉刷新。

三、 微信小程序下拉刷新上拉加载的两种实现方法介绍和代码逻辑:

1、利用"onPullDownRefresh"和"onReachBottom"方法实现小程序下拉刷新上拉加载 (这两个方法是在我们创建小程序page在js方法里面自带的)

文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/framework/app-service/page.html?t=20161107

wxml

<scroll-view scroll-y = true >
    .........
</scroll-view>

js

onPullDownRefresh: function() {
     console.log('刷新');
 },

 onReachBottom: function() {
     console.log('下一页');
 },

2、是基于scroll-view里设定bindscrolltoupper和bindscrolltolower实现微信小程序下拉刷新上拉加载。 ([注意,使用这个模式一定要设置scroll-view的高度,100%不知道为什么设置后没效果,建议使用100vh] )

文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/component/scroll-view.html?t=20161107

wxml

<scroll-view scroll-y = true bindscrolltolower="bottomjia" bindscrolltoupper="toprefesh">
    ..........
</scroll-view>

js

  bottomjia: function () {
            console.log('上拉加载')
  },
  toprefesh:function(){
  console.log('下拉刷新')
  }

四、微信小程序下拉刷新上拉加载的两种实现方法的比较

1、利用"onPullDownRefresh"和"onReachBottom"方法实现小程序下拉刷新上拉加载

优点:按照屏幕的高度进行加载和刷新,

缺点:当头部固定列表在下进行下拉或者上拉容易发生布局错乱异常(因为加载的是整个屏幕会导致,用户在下拉过快头部固定被列表所覆盖)

应用场景:页面都是列表加载和刷新

image.png

image.png

2、scroll-view里设定bindscrolltoupper和bindscrolltolower实现微信小程序下拉刷新上拉加载。

优点:基于scroll-view 可以自定义设置屏幕高度的任意占比设置,进行上拉加载和刷新

缺点:需要单独设置事件进行生效,不设置scroll高度不会生效

应用场景:头部导航中间列表底部tab,不影响整体布局

image.png

五、总结

1、针对不同场景,应用不同的方法,避免出现不必要bug

2、计算好占屏比例,适配不同手机兼容

3、总结不易,欢迎转发评论

目录
相关文章
人工智能 关系型数据库 OLAP
888 1
|
11月前
|
人工智能 自然语言处理 小程序
蚂蚁百宝箱 3 分钟上手 MCP:6 步轻松构建 Qwen3 智能体应用并发布小程序
本文介绍如何用6个步骤、3分钟快速构建一个基于Qwen3与蚂蚁百宝箱MCP的智能体应用,并发布为支付宝小程序。通过结合Qwen3强大的语言理解和生成能力,以及支付宝MCP提供的支付功能,开发者可轻松打造具备商业价值的“数字员工”。案例以“全球智能导游助手”为例,支持119种语言,不仅提供旅行建议,还能收取用户打赏。文章详细说明了从登录百宝箱、创建应用、添加插件到配置角色、发布上架及手机端体验的完整流程,同时提醒当前支付功能仅适用于测试环境。适合希望探索AI应用变现潜力的开发者尝试。
1445 14
百炼-我的智能体应用在微信公众号渠道无法得到输出
微信公众号,总是出现思考中,请回复“继续”,而在我的应用观测中已经体现了输出
502 0
|
小程序
【04】微信支付商户申请下户到配置完整流程-微信开放平台移动APP应用通过-微信商户继续申请-微信开户函-视频声明-以及对公打款验证-申请+配置完整流程-优雅草卓伊凡
【04】微信支付商户申请下户到配置完整流程-微信开放平台移动APP应用通过-微信商户继续申请-微信开户函-视频声明-以及对公打款验证-申请+配置完整流程-优雅草卓伊凡
909 1
【04】微信支付商户申请下户到配置完整流程-微信开放平台移动APP应用通过-微信商户继续申请-微信开户函-视频声明-以及对公打款验证-申请+配置完整流程-优雅草卓伊凡
|
JSON 小程序 UED
微信小程序 app.json 配置文件解析与应用
本文介绍了微信小程序中 `app.json` 配置文件的详细
2089 12
|
人工智能 小程序 算法
微信小程序地图定位的核心技术与实际应用详解
在移动互联网时代,微信小程序凭借其轻量化和普及性,成为室内地图导航的理想平台。本文探讨了微信小程序在室内定位领域的创新应用,包括蓝牙iBeacon定位、高精度地图构建及AI路径规划等核心技术,及其在购物中心、医院、机场火车站和景区等场景的应用,展示了其为用户带来的高效、智能的导航体验。
903 0
|
存储 缓存 开发框架
提高微信小程序的应用速度
【10月更文挑战第21天】提高微信小程序的应用速度需要从多个方面入手,综合运用各种优化手段。通过不断地优化和改进,能够显著提升小程序的性能,为用户带来更流畅、更高效的使用体验。
753 155
|
小程序
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
2545 0
|
移动开发 小程序
thinkphp+uniapp开发的多端商城系统源码/H5/小程序/APP支持DIY模板直播分销
thinkphp+uniapp开发的多端商城系统源码/H5/小程序/APP支持DIY模板直播分销
696 0