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


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 相关文章推荐
js 操作select与option(示例讲解)
Dec 20 Javascript
javascript 处理null及null值示例
Jun 09 Javascript
Mac OS X 系统下安装和部署Egret引擎开发环境
Sep 03 Javascript
简单谈谈jQuery(function(){})与(function(){})(jQuery)
Dec 19 Javascript
AngularJS实现元素显示和隐藏的几个案例
Dec 09 Javascript
webpack入门必知必会
Jan 16 Javascript
jQuery的中 is(':visible') 解析及用法(必看)
Feb 12 Javascript
JavaScript实现随机数生成器(去重)
Oct 13 Javascript
原生js实现公告滚动效果
Jan 10 Javascript
Vue实现滑动拼图验证码功能
Sep 15 Javascript
Vue监听滚动实现锚点定位(双向)示例
Nov 13 Javascript
uniapp电商小程序实现订单30分钟倒计时
Nov 01 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
Yii实现MySQL多数据库和读写分离实例分析
2014/12/03 PHP
jQuery实战之品牌展示列表效果
2011/04/10 Javascript
jQuery1.6 正式版发布并提供下载
2011/05/05 Javascript
得到jQuery detach()后节点中的某个值实现代码
2013/02/05 Javascript
对于Form表单reset方法的新认识
2014/03/05 Javascript
Node.js实现在目录中查找某个字符串及所在文件
2014/09/03 Javascript
jQuery中:last-child选择器用法实例
2014/12/31 Javascript
js获取滚动距离的方法
2015/05/30 Javascript
nodejs如何获取时间戳与时间差
2016/08/03 NodeJs
深入分析javascript中console命令
2016/08/14 Javascript
JavaScript中cookie工具函数封装的示例代码
2016/10/11 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
基于vue.js组件实现分页效果
2018/12/29 Javascript
vue结合element-ui使用示例
2019/01/24 Javascript
webpack HappyPack实战详解
2019/10/08 Javascript
vue和iview实现Scroll 数据无限滚动功能
2019/10/31 Javascript
Vue中watch、computed、updated三者的区别及用法
2020/07/27 Javascript
js实现盒子移动动画效果
2020/08/09 Javascript
[51:11]2014 DOTA2国际邀请赛中国区预选赛5.21 LGD-CDEC VS DT
2014/05/22 DOTA
[03:37]2014DOTA2国际邀请赛 主赛事第一日胜者组TOPPLAY
2014/07/19 DOTA
[01:03:22]LGD vs OG 2018国际邀请赛淘汰赛BO3 第一场 8.25
2018/08/29 DOTA
[30:00]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第二场 11.28
2020/12/01 DOTA
Python实现简单HTML表格解析的方法
2015/06/15 Python
使用Eclipse如何开发python脚本
2018/04/11 Python
python安装pywin32clipboard的操作方法
2019/01/24 Python
pyqt 实现QlineEdit 输入密码显示成圆点的方法
2019/06/24 Python
python 基于selectors库实现文件上传与下载
2020/12/31 Python
Zooplus葡萄牙:欧洲领先的网上宠物商店
2018/07/01 全球购物
面向对象编程的优势是什么
2015/12/17 面试题
创业计划书如何吸引他人眼球
2014/01/10 职场文书
加工操作管理制度
2014/01/19 职场文书
2014新年寄语
2014/01/20 职场文书
C++程序员求职信
2014/05/07 职场文书
校园广播稿精选
2014/10/01 职场文书
nginx中封禁ip和允许内网ip访问的实现示例
2022/03/17 Servers
sql查询语句之平均分、最高最低分及排序语句
2022/05/30 MySQL