微信小程序实现滚动加载更多的代码


Posted in Javascript onDecember 06, 2019

1.需要用到的组件和api

scroll-view(可滚动视图区域)

wx.showToast(OBJECT)显示消息提示窗----显示loading小菊花用的

2.需要用到的属性

微信小程序实现滚动加载更多的代码

微信小程序实现滚动加载更多的代码

微信小程序实现滚动加载更多的代码

 3.scrol-view需要指定一个高度,这个高度可以按自己的需求计算,我使用的是屏幕可用高度并且默认一页显示6个

微信小程序实现滚动加载更多的代码

4.滚动到底部绑定需要触发的事件

<scroll-view scroll-y='true' style="height:{{height}}px" bindscrolltolower='lower'>

5.操作事件函数,主要是将请求下来的数据用concat方法进行合并,然后赋值,我是用的for循环假装添加的数据,实际项目中可以换成自己的ajax,并且为了模拟加载我添加了一个1.5秒的定时器,先调用提示框api成功之后关闭

lower() {
  var result = this.data.res;
  var resArr = [];
//这里可以使用自己的ajax
  for (let i = 0; i < 10; i++) {
   resArr.push(i);
  };
  var cont = result.concat(resArr);//合并请求的数据
  console.log(resArr.length);
  if (cont.length >= 100) {
   wx.showToast({ //期间为了显示效果可以添加一个过度的弹出框提示“加载中” 
    title: '我也是有底线的',
    icon: 'success',
    duration: 300
   });
   return false;
  } else {
   wx.showLoading({ //期间为了显示效果可以添加一个过度的弹出框提示“加载中” 
    title: '加载中',
    icon: 'loading',
   });
   setTimeout(() => {
    this.setData({
     res: cont
    });
    wx.hideLoading();
   }, 1500)
  }
 }

  6.成功,放完整代码可以直接复制运行

wxml代码

<view class='box'>
<scroll-view scroll-y='true' style="height:{{height}}px" bindscrolltolower='lower'>
 <view wx:for="{{res}}" data-id="{{index}}" wx:key="{{index}}" style="height:{{(height/6)-1}}px;width:100%;text-align:center;line-height:{{(height/6)-1}}px; border-bottom:1px solid #ccc">{{item}}</view>
</scroll-view>
</view>

 js代码

Page({

 /**
  * 页面的初始数据
  */
 data: {
  height: '',
  res: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 },
 lower() {
  var result = this.data.res;
  var resArr = [];
  for (let i = 0; i < 10; i++) {
   resArr.push(i);
  };
  var cont = result.concat(resArr);
  console.log(resArr.length);
  if (cont.length >= 100) {
   wx.showToast({ //如果全部加载完成了也弹一个框
    title: '我也是有底线的',
    icon: 'success',
    duration: 300
   });
   return false;
  } else {
   wx.showLoading({ //期间为了显示效果可以添加一个过度的弹出框提示“加载中” 
    title: '加载中',
    icon: 'loading',
   });
   setTimeout(() => {
    this.setData({
     res: cont
    });
    wx.hideLoading();
   }, 1500)
  }
 },
 /**
  * 生命周期函数--监听页面加载
  */
 onLoad: function (options) {
  wx.getSystemInfo({
   success: (res) => {
    this.setData({
     height: res.windowHeight
    })
   }
  })
 }
})

总结

以上所述是小编给大家介绍的微信小程序实现滚动加载更多的代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
js 走马灯简单实例
Nov 21 Javascript
jquery插件开发之实现jquery手风琴功能分享
Mar 10 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
Jun 24 Javascript
extjs 时间范围选择自动判断的实现代码
Jun 24 Javascript
浏览器中url存储的JavaScript实现
Jul 07 Javascript
jQuery表单验证简单示例
Oct 17 Javascript
jquery实现限制textarea输入字数的方法
Sep 06 jQuery
JavaScript调用模式与this关键字绑定的关系
Apr 21 Javascript
一篇文章,教你学会Vue CLI 插件开发
Apr 17 Javascript
js笔试题-接收get请求参数
Jun 15 Javascript
微信小程序接入vant Weapp组件的详细步骤
Oct 28 Javascript
浅析JavaScript中的变量提升
Jun 01 Javascript
微信小程序实现滑动翻页效果(完整代码)
Dec 06 #Javascript
微信小程序实现单个卡片左滑显示按钮并防止上下滑动干扰功能
Dec 06 #Javascript
微信小程序添加插屏广告并设置显示频率(一天一次)
Dec 06 #Javascript
微信小程序激励式视频广告组件使用详解
Dec 06 #Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
Dec 06 #Javascript
vue中监听路由参数的变化及方法
Dec 06 #Javascript
详解ECMAScript2019/ES10新属性
Dec 06 #Javascript
You might like
php 从数据库提取二进制图片的处理代码
2009/09/09 PHP
php 过滤器实现代码
2010/08/09 PHP
PHP开发微信支付的代码分享
2014/05/25 PHP
如何解决PHP使用mysql_query查询超大结果集超内存问题
2016/03/14 PHP
php 魔术常量详解及实例代码
2016/12/04 PHP
Laravel5.4简单实现app接口Api Token认证方法
2019/08/29 PHP
一款js和css代码压缩工具[附JAVA环境配置方法]
2010/04/16 Javascript
js自动下载文件到本地的实现代码
2013/04/28 Javascript
使用javascript:将其它类型值转换成布尔类型值的解决方法详解
2013/05/07 Javascript
js键盘上下左右键怎么触发function(实例讲解)
2013/12/14 Javascript
Javascript学习笔记之数组的构造函数
2014/11/23 Javascript
js实现交换运动效果的方法
2015/04/10 Javascript
JS访问SWF的函数用法实例
2015/07/01 Javascript
基于JS实现Android,iOS一个手势动画效果
2016/04/27 Javascript
bootstrap table操作技巧分享
2017/02/15 Javascript
回顾Javascript React基础
2019/06/15 Javascript
vue移动端城市三级联动组件使用详解
2019/07/26 Javascript
vue之组件内监控$store中定义变量的变化详解
2019/11/08 Javascript
[03:57]DOTA2英雄梦之声_第03期_幻影刺客
2014/06/21 DOTA
python多线程操作实例
2014/11/21 Python
简单讲解Python中的数字类型及基本的数学计算
2016/03/11 Python
详解Python中的from..import绝对导入语句
2016/06/21 Python
浅谈编码,解码,乱码的问题
2016/12/30 Python
python操作列表的函数使用代码详解
2017/12/28 Python
python向已存在的excel中新增表,不覆盖原数据的实例
2018/05/02 Python
Pycharm+Python+PyQt5使用详解
2019/09/25 Python
python 在sql语句中使用%s,%d,%f说明
2020/06/06 Python
初中美术教学反思
2014/01/29 职场文书
大学生职业生涯规划书参考模板
2014/03/05 职场文书
会计工作决心书
2014/03/11 职场文书
个人委托书怎么写
2014/04/04 职场文书
群众路线个人对照检查材料2014
2014/09/26 职场文书
乡镇干部个人对照检查材料思想汇报
2014/10/04 职场文书
2015员工年度考核评语
2015/03/25 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
搬迁通知
2015/04/20 职场文书