微信小程序实现分页加载效果


Posted in Javascript onNovember 19, 2020

分页加载功能大家遇到的应该会经常遇到,应用场景也很多,例如微博,QQ,微信朋友圈以及新闻类应用,都会有分页加载的功能,这不仅节省了我们用户的流量,还提升了用户体验。那么今天的这篇文章就是介绍微信小程序中如何实现分页加载的功能。

数据来自于后端(lumen带分页)

/**
   * @todo 获取订单列表
   * @return mixed
   */
  public function getOrderList(){
    $field = ['id','order_no','name','created_at','desc','order_status','pay_status'];
    $orders = Order::where('uid',$this->user->id)->orderBy('created_at', 'desc')->paginate(5, $field);
    return $orders;
}

数据

微信小程序实现分页加载效果

..wxjs

const util = require('../../utils/util.js');
Page({
 /**
 * 页面的初始数据
 */
 data: {
  // 前台显示list
  showlist: [],
  // 初始化page
  page: 2,
  height:600,
 },
 onLoad: function (options) {
  var self = this;
  // 请求后台 
  util.ajax('order/get' , '', 'GET', res => {
    self.setData({
     showlist: res.data,
    })
  })
 },
 /**
 * 页面上拉触底事件的处理函数
 */
 upcroll: function (e) {
  var self = this;
  var page = self.data.page++;
  // 请求后台,获取下一页的数据。
  util.ajax('order/get?page=' + page, '', 'GET', res => {
   self.setData({
    //向页面已有数据后面加数据
    showlist: self.data.showlist.concat(res.data),
   })
   if (res.data=='') {
    wx.showToast({
     title: '没有更多数据',
    })
   }
  })
 }
})

..wxml

<view class='warp'>
<view class='container' >
 <scroll-view scroll-y='true' style="height:{{height}}px" bindscrolltolower="upcroll" lower-threshold="20" >
  <view class='alllist' wx:for="{{showlist}}" wx:for-item="j" wx:key="key" name="info_border">
  <view class='list'>
  <view class='img'>
   <image src='../../imges/imgicon/icon2.png' class='img'></image>
   <view class='text'>{{j.name}}</view>
  </view>
  <view class='message'>
   <view class='te'><text class='text'>日期:</text><text class='text cor'>{{j.created_at}}</text></view>
   <view class='te text on'><text class='text'>描述:</text>{{j.desc}}</view>
  </view>
  </view>
  <view class='text statsin'>
  <view class='a left'>
  <navigator url='#' class='waiting' >待接单</navigator>
  </view>
  <view class='a'>
  <navigator url='#' class='okorder'>已完成</navigator>
  </view>
  </view>
 </view>
 </scroll-view>
 </view> 
</view>

结果:

微信小程序实现分页加载效果

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

Javascript 相关文章推荐
jquery如何扑捉回车键触发的事件
Apr 24 Javascript
基于jQuery 实现bootstrapValidator下的全局验证
Dec 07 Javascript
JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
Feb 25 Javascript
jQuery Ajax 全局调用封装实例代码详解
Jun 02 Javascript
纯js模仿windows系统日历
Feb 04 Javascript
vue v-on监听事件详解
May 17 Javascript
详解用vue编写弹出框组件
Jul 04 Javascript
Node.js 的模块知识汇总
Aug 16 Javascript
基于js粘贴事件paste简单解析以及遇到的坑
Sep 07 Javascript
javascript基于牛顿迭代法实现求浮点数的平方根【递归原理】
Sep 28 Javascript
Vue在页面数据渲染完成之后的调用方法
Sep 11 Javascript
python虚拟环境 virtualenv的简单使用
Jan 21 Javascript
vue-drawer-layout实现手势滑出菜单栏
Nov 19 #Vue.js
H5 js点击按钮复制文本到粘贴板
Nov 19 #Javascript
JS数据类型分类及常用判断方法
Nov 19 #Javascript
JavaScript构造函数原理及实现流程解析
Nov 19 #Javascript
javascript this指向相关问题及改变方法
Nov 19 #Javascript
JavaScript实现alert弹框效果
Nov 19 #Javascript
Vue 打包的静态文件不能直接运行的原因及解决办法
Nov 19 #Vue.js
You might like
php中获得视频时间总长度的另一种方法
2011/09/15 PHP
PHP附件下载中文名称乱码的解决方法
2015/12/17 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
PHP日期和时间函数的使用示例详解
2020/08/06 PHP
Thinkphp极验滑动验证码实现步骤解析
2020/11/24 PHP
jquery 文本上下无缝滚动,鼠标放上去就停止 小例子
2013/06/05 Javascript
在子窗口中关闭父窗口的一句代码
2013/10/21 Javascript
鼠标移到div,浮层显示明细,弹出层与div的上边距左边距重合(示例代码)
2013/12/14 Javascript
JavaScript数组各种常见用法实例分析
2015/08/04 Javascript
javascript 中的 delete及delete运算符
2015/11/15 Javascript
jQuery Validate格式验证功能实例代码(包括重名验证)
2017/07/18 jQuery
ES6 Set结构的应用实例分析
2019/06/26 Javascript
Vue实现数据表格合并列rowspan效果
2020/11/30 Javascript
viewer.js实现图片预览功能
2020/06/24 Javascript
Element Notification通知的实现示例
2020/07/27 Javascript
Vue Element校验validate的实例
2020/09/21 Javascript
通过实例解析json与jsonp原理及使用方法
2020/09/27 Javascript
vue实现简单的登录弹出框
2020/10/26 Javascript
python实现网页链接提取的方法分享
2014/02/25 Python
python读取oracle函数返回值
2016/07/18 Python
Python数据结构之双向链表的定义与使用方法示例
2018/01/16 Python
flask中过滤器的使用详解
2018/08/01 Python
Python装饰器限制函数运行时间超时则退出执行
2019/04/09 Python
Python+OpenCV采集本地摄像头的视频
2019/04/25 Python
Python基于OpenCV实现人脸检测并保存
2019/07/23 Python
Django项目中实现使用qq第三方登录功能
2019/08/13 Python
用python画一只可爱的皮卡丘实例
2019/11/21 Python
python中append函数用法讲解
2020/12/11 Python
市级绿色学校申报材料
2014/08/25 职场文书
2015年营业员工作总结
2015/04/23 职场文书
党员干部廉政承诺书
2015/04/28 职场文书
行政申诉状范文
2015/05/20 职场文书
辞职离别感言
2015/08/04 职场文书
MyBatis自定义SQL拦截器示例详解
2021/10/24 Java/Android