移动端网页的上滑加载更多,其实就是滑动+分页的实现。

<template>
<div>
<p class="footer-text">--{{footerText}}--</p>
<p class="loading" v-show="loading"></p>
</div>
</template>
<script>
import $ from 'jquery'
export default {
data(){
return{
serverData:[],//接受服务器的数据,
page:1,
footerText:'上滑加载更多',
loading:false//loading的开关
}
},
created(){
this.getServerData(this.page);
this.listenScroll();
},
beforeDestroy(){
$(window).unbind('scroll');
},
methods:{
getServerData(){
//参数只有page,项目需要可以添加
//项目中的ajax方式可能跟这个不一样,没关系,思路是相同的。
const num = 3;//每一页接受多少条数据
this.$api.get('url',{page:this.page},res=>{
this.loading = false;
this.serverData = res.data;//接受数据
if(res.data.length<num){
this.footerText = "到底了";
$(window).unbind('scroll');
}
})
},
listenScroll(){
          let self = this;
$(window).scroll(function () {
let scrollTop = $(window).scrollTop();
let windowTop = $(window).height();
let documentTop = $(document).height();
if(documentTop - windowTop <= scrollTop){
self.page++;
self.loading = true;
self.getServerData();
}
});
}
}
}
</script>

  

  精妙的地方在 getServerData()判断什么时候后端的数据全了,判断就是当前返回的数据长度小于约定的长度,说明到底了。

如果后端是thinkPhp,由于有page()函数,那么代码类似这样:

  

//获取page参数
$page = I('get.page',1);
//前后端约定每次显示的条数
$num = 3;
$M
->where()
-> page($page,$num)
->select

  

vue 上滑加载更多的更多相关文章

  1. Android如何定制一个下拉刷新,上滑加载更多的容器

    前言 下拉刷新和上滑加载更多,是一种比较常用的列表数据交互方式. android提供了原生的下拉刷新容器 SwipeRefreshLayout,可惜样式不能定制. 于是打算自己实现一个专用的.但是下拉 ...

  2. Android的ListView分页功能(上滑加载更多)

    今天主要工作是将之前实现的各种ListView显示全部信息,优化成了每次加载几条数据,然后上滑的时候加载更多,底部显示一个进度条和一个文字提示,然后加载完毕后,将提示信息隐藏. 一边看教学视频一遍敲代 ...

  3. 移动端web页面上滑加载更多功能

    背景介绍: 开发企业微信的一个应用,实现在企业微信中调用自己程序页面,页面加载多模块数据,向下滑加载更多,等等等等,一波三折 然后很早就成功了是这样实现的: html: <div id=&quo ...

  4. 使用jquery.more.js上滑加载更多

    html: <div id="more"> <div class="single_item"> <div class=" ...

  5. vux, vue上拉加载更多

    <template> <" :bottom-method="loadBottom" :bottom-all-loaded="bottomAll ...

  6. 微信小程序上滑加载更多

    onReachBottom: function () { var that = this var limit = that.data.limit var count = that.data.count ...

  7. APICloud 上滑加载更多

    <!DOCTYPE html><html>        <head>        <meta charset="UTF-8">  ...

  8. jquery 上滑加载更多

    $(document).ready(function() { var totalPage = {$totalPage};//总页数 var page = {$page}; //起始页 var page ...

  9. jq上滑加载更多

    html 结构 <div id="main"> <ul class="order-list" id="list_box"& ...

随机推荐

  1. 暑假集训D15总结

    考试 日常爆炸= = T1数据背锅,回天乏力 推了两个小时的T2竟然莫名RE,我也是服了 T3考试时就没读懂题,做个鬼啊 今天一直在写某奇怪的技术贴,竟然没有写题解(手动滑稽) 希望明天不要乱炸吧 博 ...

  2. 清北学堂模拟赛d7t3 天上掉馅饼

    题目描述小 G 进入了一个神奇的世界,在这个世界,天上会掉下一些馅饼.今天,天上会随机掉下 k 个馅饼.每次天上掉下馅饼,小 G 可以选择吃或者不吃(必须在下一个馅饼掉下来之前作出选择,并且现在决定不 ...

  3. java.awt.headless 参数说明

    在使用Java处理图形应用时,经常有人推荐设置 -Djava.awt.headless=true,具体含义和效果查了一下,记录在这里分享 Headless模式是系统的一种配置模式.在该模式下,系统缺少 ...

  4. How to change java version in Linux

    How to change default Java version on Linux Posted on November 1, 2015 by Dan Nanni Leave a comment ...

  5. 【ACM】hdu_zs3_1006_AB_201308101123

    A/B Time Limit : 1000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other)Total Submission ...

  6. N天学习一个Linux命令之帮助命令:man

    前言 工作中每天都在使用常用的命令和非常用的命令,忘记了用法或者参数,都会bing一下,然后如此循环.一直没有真正的系统的深入的去了解命令的用法,我决定打破它.以前看到有人,每天学习一个linux命令 ...

  7. python 函数和函数式编程

    什么是函数 调用函数 创建函数 变长参数 函数式编程 变量的作用域 生成器 1 什么是函数 函数是对程序逻辑进行结构化或过程化的一种编程方法.能将整块代码巧妙地隔离成易于管理 的小块,把重复代码放到函 ...

  8. [Android L or M ]解除SwitchPreference与Preference的绑定事件

    需求描写叙述 默认情况,Android的两个控件SwitchPreference和CheckBoxPreference的事件处理是和Preference整个区域的事件绑定在一起的,然而,有时须要将其事 ...

  9. POJ 3233 Matrix Power Series 二分+矩阵乘法

    链接:http://poj.org/problem?id=3233 题意:给一个N*N的矩阵(N<=30),求S = A + A^2 + A^3 + - + A^k(k<=10^9). 思 ...

  10. 【九章算法免费讲座第一期】转专业找CS工作的“打狗棒法”

    讲座时间: 美西时间6月5日18:30-20:00(周五) 北京时间6月6日09:30-11:00(周六a.m) 讲座安排: 免费在线直播讲座 报名网址: http://t.cn/R2XgMSH,或猛 ...