微信小程序 - 最新详细实现列表上拉懒加载及“到底了“功能示例,数据列表下拉滑动页面触底后请求接口懒加载数据,自动计算分页/总条数、判断分页懒加载是否继续请求接口数据,以及数据没有了底部提示用户没有了

41 篇文章 11 订阅 ¥9.90 ¥99.00

前言

列表懒加载完美示例,传入列表数据自动计算分页和触底是否继续加载判断,无数据显示自定义文字。

在微信小程序开发中,详解实现 “列表数据下拉触底懒加载” 自动计算分页、是否继续请求接口、数据为空时底部显示文字提示用户已经到底了,列表上拉加载示例代码,懒加载自动计算分页、检查是否已经请求完全部数据、自动请求接口合并数据,列表滚动触底分页加载数据,微信小程序开发使用onreachBottom实现页面触底加载及分页,详细源码。

小程序 vue2 | vue3 版本语法都能使用,跟着教程复制代码运行即可。


如下图所示真实接口请求,只需要替换成您的数据接口即可使用,功能强大可靠。

详细示例代码及注释,保证新手小白100%搞定。

在这里插入图片描述

示例代码

具体实现代码如下,请直接复制运行测试即可。

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是一个简单的微信小程序数据上拉触底加载后面数据示例代码: 1. 在页面的js文件中定义一个变量,用于存储当前页数和每页数据量: ```javascript Page({ data: { page: 1, pageSize: 10, dataList: [] }, // ... }) ``` 2. 在页面的wxml文件中设置一个scroll-view组件,并绑定scrolltolower事件: ```html <scroll-view scroll-y="true" bindscrolltolower="loadMore"> <!-- 数据列表 --> <view wx:for="{{dataList}}" wx:key="id">{{item}}</view> <!-- 加载更多提示 --> <view wx:if="{{loadingMore}}">正在加载更多...</view> <view wx:if="{{noMoreData}}">没有更多数据了</view> </scroll-view> ``` 3. 在页面的js文件中定义一个loadMore方法,用于触发加载更多数据的操作: ```javascript Page({ data: { page: 1, pageSize: 10, dataList: [], loadingMore: false, noMoreData: false }, // 触底加载更多数据 loadMore: function() { if (this.data.noMoreData || this.data.loadingMore) { return; } this.setData({ loadingMore: true }); // 发送请求获取后面的数据 wx.request({ url: 'http://example.com/api/data', data: { page: this.data.page + 1, pageSize: this.data.pageSize }, success: res => { // 将获取到的数据添加到列表中 const newData = res.data; if (newData.length > 0) { this.setData({ page: this.data.page + 1, dataList: this.data.dataList.concat(newData), loadingMore: false }); } else { // 没有更多数据了 this.setData({ loadingMore: false, noMoreData: true }); } }, fail: err => { console.error(err); this.setData({ loadingMore: false }); } }); } }) ``` 4. 在页面的js文件中定义一个onLoad方法,用于在页面加载时获取第一页数据: ```javascript Page({ data: { page: 1, pageSize: 10, dataList: [], loadingMore: false, noMoreData: false }, // 页面加载时获取第一页数据 onLoad: function() { this.setData({ loadingMore: true }); wx.request({ url: 'http://example.com/api/data', data: { page: 1, pageSize: this.data.pageSize }, success: res => { this.setData({ dataList: res.data, loadingMore: false }); }, fail: err => { console.error(err); this.setData({ loadingMore: false }); } }); }, // 触底加载更多数据 loadMore: function() { // ... } }) ``` 通过以上代码,即可实现微信小程序数据上拉触底,依次加载后面的数据。需要注意的是,加载更多数据时需要判断是否已经加载完所有数据,避免无效请求
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王佳斌

请作者喝杯咖啡 :)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值