vue项目 h5上拉加载(分页功能)
<template>
<div class="receivable">
<div class="application-header flex-betweenCenter" @click="goBack">
<img
class="prod-header-navImg"
src="../../assets/images/icon_back.png"
alt=""
/>
<div class="font18 hy_color weightBold">登录日志</div>
<div></div>
</div>
<div class="receivable-main">
<li class="log-ul-li" v-for="item in list" :key="item.id">
<div>
<div>{{ item.type }}</div>
<div class="log-color">{{ item.create_time }}</div>
</div>
<div>{{ item.operate }}</div>
</li>
<div class="bottom-tishi">{{loadingText}}</div>
</ul>
<div v-if="is_number == 2">
<div class="emptaype-box">
<img src="../../assets/images/empty_order.png" alt="" />
<p>暂无数据哦!~</p>
</div>
</div>
</div>
<div class="receivable-footer"></div>
</div>
</template>
<script>
import { storage } from "@/utils/storage";
export default {
name: "Receivable",
data() {
return {
is_number: 1,
p: 1,
list: [],
timer: null,
loadingText:'',
clientHeight: null
};
},
created() {this._getUserLoginLog();
this.clientHeight = +document.documentElement.clientHeight -60
},
methods: {
goBack() {
this.$router.go(-1);
},
_getUserLoginLog() {
let data = {
token: this.token,
p: 1,
};
this.$api.getUserLoginLog(data).then((res) => {
if (res.data.length > 0) {
this.list = res.data;
this.is_number = 1;
this.p++
} else {
this.is_number = 2;
}
});
},
handleScroll(e) {
//这里使用个延时加载,不然滑动屏幕的时候会不断触发方法,去计算高度,浪费性能
let that = this
clearTimeout(this.timer)
that.timer = setTimeout(function () {
let clientHeight = e.target.clientHeight;
let scrollTop = e.target.scrollTop;
let scrollHeight = e.target.scrollHeight;
console.log(clientHeight,scrollTop,scrollHeight)
if (clientHeight + scrollTop >= scrollHeight - 10) {
that.getUserLoginLogMeuns()
}
}, 500);
},
getUserLoginLogMeuns() {
this.loadingText = '加载更多'
let data = {
token: this.token,
p: this.p,
};
this.loadingText = '加载中...'
this.$api.getUserLoginLog(data).then((res) => {
if (res.data.length > 0) {
this.list = this.list.concat(res.data)
this.is_number = 1
} else if(res.data.length==0){
this.loadingText = '没有更多了'
}
this.p++
});
},
},
};
</script>
vue项目 h5上拉加载(分页功能)的更多相关文章
- Android 上拉加载更多功能
前几天看了github上面的例子,参照它的实现,自己又稍微改了一点,往项目里面增加了一个上拉加载更多功能.具体的实现如下: 首先要重写ListView: import android.content. ...
- 你必须了解的RecyclerView的五大开源项目-解决上拉加载、下拉刷新和添加Header、Footer等问题
前段时间做项目由于采用的MD设计,所以必须要使用RecyclerView全面代替ListView.但是开发中遇到了需要实现RecyclerView上拉加载.下拉刷新和添加Header以及Footer等 ...
- vue移动端上拉加载更多
LoadMore.vue <template> <div class="load-more-wrapper" @touchstart="touchSta ...
- IOS tableview下拉刷新上拉加载分页
http://code4app.com/ios/快速集成下拉上拉刷新/52326ce26803fabc46000000 刷新没用用插件,加载使用的MJ老师的插件. - (void)viewDidLoa ...
- h5上拉加载更多
--------------------------------------------------------------------------例子1 <div class="bo ...
- Flutter移动电商实战 --(20)首页上拉加载更多功能的制作
这节课学习一下上拉加载效果,其实现在上拉加载的插件有很多,但是还没有一个插件可以说完全一枝独秀,我也找了一个插件,这个插件的优点就是服务比较好,作者能及时回答大家的问题.我觉的选插件也是选人,人对了, ...
- Android 开发 上拉加载更多功能实现
实现思维 开始之前先废话几句,Android系统没有提供上拉加载的控件,只提供了下拉刷新的SwipeRefreshLayout控件.这个控件我们就不废话,无法实现上拉刷新的功能.现在我们说说上拉加载更 ...
- 微信小程序上拉加载——分页
wxml: <view class="page"> <scroll-view class="imageViewCss_1" scroll-y= ...
- 前端提升生产力系列三(vant3 vue3 移动端H5下拉刷新,上拉加载组件的封装)
| 在日常的移动端开发中,经常会遇到列表的展示,以及数据量变多的情况下还会有上拉和下拉的操作.进入新公司后发现移动端好多列表,但是在看代码的时候发现,每个列表都是单独的代码,没有任何的封装,都是通过v ...
随机推荐
- SpringSecurity 在 SSM架构中的使用
SpringSecurity - SSM SpringSecurity 对比 Shiro SpringSecurity的特点: 能和 Spring无缝贴合 能实现全面的权限控制 专门为 Web开发而设 ...
- 内存映射IO(MMIO)
端口I/O 介绍: 一种I/O编址方式是端口映射I/O(port-mapped I/O), CPU使用专门的I/O指令对设备进行访问, 并把设备的地址称作端口号. 在执行其中的一条指令时,CPU使用地 ...
- Hudi 数据湖的插入,更新,查询,分析操作示例
Hudi 数据湖的插入,更新,查询,分析操作示例 作者:Grey 原文地址: 博客园:Hudi 数据湖的插入,更新,查询,分析操作示例 CSDN:Hudi 数据湖的插入,更新,查询,分析操作示例 前置 ...
- Vue学习之--------深入理解Vuex、原理详解、实战应用(2022/9/1)
@ 目录 1.概念 2.何时使用? 3.搭建vuex环境 3.1 创建文件:src/store/index.js 3.2 在main.js中创建vm时传入store配置项 4.基本使用 4.1.初始化 ...
- 教你如何解决T+0的问题
摘要:T+0查询是指实时数据查询,数据查询统计时将涉及到最新产生的数据. 本文分享自华为云社区<大数据解决方案:解决T+0问题>,作者: 小虚竹 . T+0问题 T+0查询是指实时数据查询 ...
- UVA10763
菜鸡退役人来水黄了-- \(\sf{Solution}\) 搞不懂为什么要排序,这不是两个数组直接模拟的数数题吗. 读入后,对于每个学生,令他要去的学校以及他现在所在学校人数对应加一,再 check ...
- JS逆向实战2--cookie-AcwScV2加密—某招标信息网
cookies的获取 首先拿到第一次访问原链接 拿到acw_tc的值,然后放到session中去 再用这个session再次访问原链接拿到js加载的加密的真实数据.用了一些反混淆. 最后获取这个数据中 ...
- 嵌入式学习-c语言篇01:搭建C语言环境
使用NotePad++和gcc编译器来搭建c语言环境 NotePad++:C语言编码器 gcc:C语言编译器 这两个软甲可以去官网下载 下载好进入该文件夹,如图: 添加环境变量:直接cmd,运行gcc ...
- SQLSever数据库基本操作
一.SQLSever数据库基本操作 1.创建数据库 use master if exists(select * from sysdatabases where name='SMDB') drop da ...
- 思维分析逻辑 3 DAY
目录 指标分析 指标选择原则 指标体系建立 步骤 流量分析 渠道分析(从哪来) 常见渠道及渠道分类 渠道推广过程 渠道的指标 渠道分析方法 转化及价值分析(经过什么?产生什么价值?) 漏斗分析 功能模 ...