微信小程序下拉刷新列表onPullDownRefresh;微信小程序上划加载列表onReachBottom;uni-app微信小程序下拉加载数据;uni-app微信小程序上划页面加载数据

需求:微信小程序列表加载有两种方式,分别是按住页面下拉加载数据数据(触发onPullDownRefresh)直接上划滚动页面到底部加载数据(触发onReachBottom函数)

本文主要是使用上划滚动页面触底加载数据(如果做页面下拉加载数据 只需要复制相同逻辑即可)

在这里插入图片描述

以下代码可直接复制使用:

<template><view><view class="list" v-for="item in dataLit" :key="item.id">姓名:{{item.name}}, 年龄:{{item.age}}</view><view class="text">{{loadMoreText}}</view></view>
</template><script>
export default {data () {return {loadMoreText: '',dataLit: [// { id: 1, name: '张三1', age: 1 },],max: 10,allTotal: 62,//假设数据总量是62条--每次请求后端page为1,2,3... size为10 每次返回10条}},onReachBottom () {console.log("监听页面滚动到底部,一般用于上划触底刷新 onReachBottom ")if (this.max > this.allTotal) {return} else {uni.showLoading({title: '加载中...',mask: true,})this.max = this.max + 10// 模拟数据加载setTimeout(() => {this.getMoreList()}, 300)}},onPullDownRefresh () {console.log("监听用户下拉动作,一般用于下拉刷新 onPullDownRefresh   需要 enablePullDownRefresh 开启下拉刷新 在数据加载后使用 stopPullDownRefresh 恢复下拉状态")// 如果是做下拉刷新 只需要将上划的逻辑复制进来即可},onShow () {this.getMoreList()},methods: {getMoreList () {let page = Math.ceil(this.max / 10)console.log('max', this.max)console.log('调用后端接口传递的page计算', page)// 情景1:请求后端每次返回10条数据  以下遍历是为了模拟后端返回10条数据--正常是传递page和size掉接口获取10条数据let arr = []for (let index = 0; index < 10; index++) {if (this.dataLit.length + index + 1 <= 62) {arr.push({ id: this.dataLit.length + index + 1, name: '张三' + (this.dataLit.length + index + 1), age: this.dataLit.length + index + 1 })}}this.dataLit = [...this.dataLit, ...arr]// 情景2:后端一次性返回所有数据,前端做数据截取即可--每次上划截取10条插入// let allList = []//假设这个是后端一次性返回的所有数据列表// this.dataLit = allList.slice(0, this.max)uni.hideLoading()if (this.max > this.allTotal) {this.loadMoreText = "没有更多了"return} else {this.loadMoreText = "下划加载更多数据..."}}},
}
</script><style lang="less" scope>
.list {height: 160rpx;line-height: 160rpx;border-bottom: 1px solid #ccc;
}
.text {text-align: center;color: #ccc;
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/403385.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

table下面appendChild别忘了tbody

table下面appendChild别忘了tbody

ARP协议在同网段及跨网段下的工作原理

一、ARP在同个网段下的工作原理 首先&#xff0c;每台主机都会在自己的ARP缓冲区中建立一个 ARP列表&#xff0c;以表示IP地址和MAC地址的对应关系。当源主机需要将一个数据包要发送到目的主机时&#xff0c;会首先检查自己 ARP列表中是否存在该 IP地址对应的MAC地址&#xff0…

decode 类似 case when

将查询的结果翻译成其他值,类似 case when to_char(创建时间,mm) 01 then 查询统计的是1月 when to_char(创建时间,mm) 02 then 查询统计的是2月 when to_char(创建时间,mm) 03 then 查询统计的是3月 ....................... select decode( to_char(创建时间,mm) , 01…

如何查看服务器当前的负载信息

From: http://blog.csdn.net/mal327/article/details/7423750 如何查看服务器当前的负载信息http://www.flybaaa.com/help/69_1.html网吧内突然很卡&#xff0c;这个情况我相信大家都有遇见过&#xff0c;但是通过什么方法来排查是否linux服务器的负载过大导致的这个问题呢&am…

前端vue实现图片压缩并且将其转换为jpg格式图片;前端转换图片格式;前端使用js转换图片格式;前端使用canvas将png格式图片转成jpg格式

需求中可能有时需要将png图片转成jpg图片或者格式互转&#xff0c;前端使用js和canvas转换图片的格式&#xff1b; 原理&#xff1a; 是使用FileReader来把文件读入内存&#xff0c;并且读取文件中的数据。 readAsDataURL方法可以在浏览器主线程中异步访问文件系统&#xff0c;…

mysql中创建表时提示 no database selected

用习惯了oracle或者sqlserver的界面形式 当用到mysql时创建表时往往就会忘记添加表空间这个前提。在一个用户下面可建多个表空间使用语句 create database your_database_name;下面讲一下在建表时有两种方法&#xff1a;1、在命令窗口中用命令 use database_name;该命令将会转…

系统中已安装了vmware,请先卸载干净并重启电脑

打开VMware目录&#xff0c;有个卸载的.cmd 以管理员身份运行&#xff0c;成功之后注销一下电脑。进入系统把VM目录删除&#xff0c;重新解压缩或者安装&#xff0c;再以管理员身份运行安装的.cmd&#xff0c;就可以了。

前端读取文件图片信息流;js读取图片不同信息流;js读取图片;前端就js读取二进制数据;前端js读取文件流使用FileReader对象的readAsDataURL方法来读取图像文件;

原文链接 FileReader来把文件读入内存&#xff0c;并且读取文件中的数据。 readAsDataURL方法可以在浏览器主线程中异步访问文件系统&#xff0c;读取文件中的数据&#xff0c;且读取后 result 为 DataURL, DataURL 可直接 赋值给 img.src。 FileReader 的 result 可以有 3 种形…

【转】LAMP网站架构方案分析【精辟】

【转】LAMP网站架构方案分析【精辟】 http://www.cnblogs.com/mo-beifeng/archive/2011/09/13/2175197.htmlXubuntu下LAMP环境安装(最佳的PHP环境搭建) http://www.cnblogs.com/mo-beifeng/archive/2011/08/13/2137605.html 转载于:https://www.cnblogs.com/bravehunter/p/5709…

有源晶振和无源晶振的区别

1、晶振在电路中就相当于人的一个心脏&#xff0c;晶振为电路提供了一个时钟信号。有源晶振比较贵&#xff0c;但是有源晶振自身就能震动。而无论是无源晶振&#xff0c;还是有源晶振&#xff0c;都有自身的优点和缺点所在&#xff0c;若考虑产品成本&#xff0c;建议可以选择无…

免费设计图标的网站;免费设计的网站;免费设计的网站;

链接1&#xff1a;canva设计logo和图标 链接2&#xff1a;包图网 可以自行设计、编辑、下载logo图标海报等

介绍Linux中cp直接覆盖不提示的方法

From: http://www.php100.com/html/webkaifa/Linux/2011/0220/7570.html 新做了服务器&#xff0c;cp覆盖时&#xff0c;无论加什么参数-f之类的还是提示是否覆盖&#xff0c;这在大量cp覆盖操作的时候是不能忍受的。把a目录下的文件复制到b目录以下是代码片段&#xff1a;cp …

路由的Modem信号控制

中低端路由器上使用disp interface 查看相应串口状态信息&#xff0c;其中DCD、DTR、DSR、RTS及CTS等五个状态指示分别代表什么意思&#xff1f; DCD&#xff08;Data Carrier Detect 数据载波检测&#xff09; DTR&#xff08;Data Terminal Ready 数据终端准备好&#xff09;…

项目回顾1-图片上传-form表单还是base64-前端图片压缩

第一个项目终于上线了&#xff0c;是一个叫亲青筹的公益众筹平台&#xff0c;微信端&#xff0c;电脑端还有后台界面大部分都是我完成的&#xff0c;几个月过来&#xff0c;感觉收获了很多&#xff0c;觉得要总结一下。 首先想到的是图片上传的问题。在通常表单数据都是ajax上传…

4.6 【共享源】流的生产者(一)

一,什么是生产者? 生产者创建内容并与有权限的消费者共享。 作为生产者,必须相应地设置流以供消费。通常,我们需要在生产者应用程序中执行接下来的流程来共享产生的内容。 二,创建生产者的流 调用 screen_create_stream() 为生产者创建流以进行渲染。例如 ... screen…

vue路由传参两种方式;vue路由传参query与params区别;vue路由跳转的带参与不带参,路由跳转传参方式:name 、 path;

vue项目的路由传参常用的有两种方式&#xff1a;query和params 1.query传参特点&#xff1a;1.1可以用path也可以用name传递路径 注意name是路由页面vue文件的名称 不需要/1.2跳转页面地址栏可以看到路径和参数 通过 this.$route.query.id 可以获取到参数1.3刷新不会丢失参数t…

Qt下Undefined reference to 'vtable for xxx'

QT下遇到这种错误提示时候需要注意以下情况&#xff1a; 一、cpp文件里使用了Q_OBJECT 分析&#xff1a;qmake不会处理.cpp文件里的Q_OBJECT&#xff0c;所以如果在.cpp文件中有它的话将会产生undefined reference to vtable for "xxx::xxx"。 方法1&#xff1a;…

Realtek网卡如何识别具体型号是8111B/8111C/8111D还是8111E???

From: http://support.icafe8.com/technologynews/focus/1347.html 貌似在去年&#xff0c;Realtek网卡把型号都统一为Realtek GBE什么什么的这种名字&#xff0c;这个修改说实话&#xff0c;对有盘没啥影响&#xff0c;只要驱动装好&#xff0c;能上网就ok了&#xff0c;但是…

【leetcode77】Single Number

一题目描述&#xff1a; 给定一个数组&#xff0c;只有一个数字出现一次&#xff0c;其余都是两次&#xff0c;判断那个数字 思路&#xff1a; 不断取出数据进行异或&#xff0c;最后一个数字&#xff0c;因为相同的数字会抵消代码&#xff1a; public class Solution {public …

qDebug格式化输出类型

%a,%A——读入一个浮点值(仅C99有效)    %c——读入一个字符    %d——读入十进制整数    %i——读入十进制&#xff0c;八进制&#xff0c;十六进制整数    %o——读入八进制整数    %x,%X——读入十六进制整数    %s——读入一个字符串&#xff0c;遇空格、制…