微信小程序实现列表下拉刷新上拉加载


Posted in Javascript onJuly 29, 2020

本文实例为大家分享了微信小程序实现列表下拉刷新上拉加载的具体代码,供大家参考,具体内容如下

DEMO下载

效果图

微信小程序实现列表下拉刷新上拉加载

原理

利用微信小程序的onPullDownRefresh函数(下拉刷新监听函数)和onReachBottom函数(上拉加载监听函数)监听页面的下拉和上拉动态,从而对页面数据进行修改!

页面配置JSON

  • enablePullDownRefresh:开启下拉刷新;
  • onReachBottomDistance:页面上拉触底事件触发时距页面底部距离,单位为px。
{
 "enablePullDownRefresh": true,
 "onReachBottomDistance": 50
}

WXML

<view class="tui-content">
 <view class="tui-menu-list" wx:for="{{dataList}}">Item -- {{item}}</view>
</view>

JS

此处用setTimeout模拟请求数据;
加载数据限制三次,调用wx.showToast显示没有更多数据。

Page({
 data: {
 dataList: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],
 count : 0
 },
 onPullDownRefresh(){
 var self = this;
 setTimeout(() => {
 // 模拟请求数据,并渲染
 var arr = self.data.dataList, max = Math.max(...arr);
 for (var i = max + 1; i <= max + 3; ++i) {
 arr.unshift(i);
 }
 self.setData({ dataList: arr });
 // 数据成功后,停止下拉刷新
 wx.stopPullDownRefresh();
 }, 1000);
 },
 onReachBottom(){
 var arr = this.data.dataList, max = Math.max(...arr);
 if (this.data.count < 3) {
 for (var i = max + 1; i <= max + 5; ++i) {
 arr.push(i);
 }
 this.setData({
 dataList: arr,
 count: ++this.data.count
 });
 } else {
 wx.showToast({
 title: '没有更多数据了!',
 image: '../../src/images/noData.png',
 })
 }
 }
})

总结

必须在每次数据请求完成后,使用wx.stopPullDownRefresh()停止下拉刷新。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
动态加载js的几种方法
Oct 23 Javascript
电子商务网站上的常用的js放大镜效果
Dec 08 Javascript
Javascript 实现的数独解题算法网页实例
Oct 15 Javascript
完美实现八种js焦点轮播图(上篇)
Jul 18 Javascript
jquery点击切换背景色的简单实例
Aug 25 Javascript
前端主流框架vue学习笔记第一篇
Jul 26 Javascript
vue proxyTable 接口跨域请求调试的示例
Sep 12 Javascript
Vue组件之全局组件与局部组件的使用详解
Oct 09 Javascript
node.js基于express使用websocket的方法
Nov 09 Javascript
vue中设置、获取、删除cookie的方法
Sep 21 Javascript
Vue组件通信的几种实现方法
Apr 25 Javascript
详解小程序毫秒级倒计时(适用于拼团秒杀功能)
May 05 Javascript
微信小程序数字滚动插件使用详解
Feb 02 #Javascript
JS中的BOM应用
Feb 02 #Javascript
微信小程序实现文字跑马灯效果
May 26 #Javascript
微信小程序实现滚动消息通知
Feb 02 #Javascript
微信小程序实现YDUI的ScrollTab组件
Feb 02 #Javascript
微信小程序实现YDUI的ScrollNav组件
Feb 02 #Javascript
vuex的简单使用教程
Feb 02 #Javascript
You might like
迅雷下载《中学科技》怀旧期刊下载
2021/02/27 无线电
php自动给文章加关键词链接的函数代码
2012/11/29 PHP
解决PHP4.0 和 PHP5.0类构造函数的兼容问题
2013/08/01 PHP
php集成开发环境详解
2019/09/24 PHP
Javascript 实现的数独解题算法网页实例
2013/10/15 Javascript
js获取当月最后一天实例代码
2013/11/19 Javascript
js获取IP地址的方法小结
2014/07/01 Javascript
javascript基于DOM实现省市级联下拉框的方法
2015/05/14 Javascript
JS实现字符串转日期并比较大小实例分析
2015/12/09 Javascript
基于JS实现回到页面顶部的五种写法(从实现到增强)
2016/09/03 Javascript
jQuery子元素过滤选择器用法示例
2016/09/09 Javascript
javascript删除html标签函数cIsHTML
2017/01/09 Javascript
JQuery 获取多个select标签option的text内容(实例)
2017/09/07 jQuery
ES6 Proxy实现Vue的变化检测问题
2019/06/11 Javascript
layui之数据表格--与后台交互获取数据的方法
2019/09/29 Javascript
vue+elementUI实现简单日历功能
2020/09/24 Javascript
jQuery实现tab栏切换效果
2020/12/22 jQuery
Python实现将HTML转换成doc格式文件的方法示例
2017/11/20 Python
Django读取Mysql数据并显示在前端的实例
2018/05/27 Python
Python使用pylab库实现绘制直方图功能示例
2018/06/01 Python
python基础知识(一)变量与简单数据类型详解
2019/04/17 Python
对Python3之方法的覆盖与super函数详解
2019/06/26 Python
Django REST framework 单元测试实例解析
2019/11/07 Python
pycharm中导入模块错误时提示Try to run this command from the system terminal
2020/03/26 Python
Python importlib动态导入模块实现代码
2020/04/16 Python
python如何绘制疫情图
2020/09/16 Python
pycharm 的Structure界面设置操作
2021/02/05 Python
HTML5未来发展趋势
2016/02/01 HTML / CSS
竞聘医务工作人员的自我评价分享
2013/11/04 职场文书
长辈证婚人证婚词
2014/01/09 职场文书
119消防日活动总结
2014/08/29 职场文书
2014学校领导四风问题对照检查材料思想汇报
2014/09/22 职场文书
2015新员工工作总结范文
2015/10/15 职场文书
小学生安全教育心得体会
2016/01/15 职场文书
《葡萄沟》教学反思
2016/02/23 职场文书
送给自己的励志语句:要安静的优秀,悄无声息的坚强
2019/11/26 职场文书