网站首页 > 技术文章 正文
配置pages.json
在uni-app中,页面滑动到底部可以监听到onReachBottom() 方法,如下配置:
// pages.json 文件中
{
"path": "pages/index",
"style": {
"navigationBarTitleText": "当前页面的title",
"navigationStyle":"custom", //当前页面不需要导航
"enablePullDownRefresh":true, //配置后,可以下拉刷新,上拉加载
"onReachBottomDistance":100
}
},
// 滑动到距离底部100px的时候触发(上拉加载)
onReachBottom() {
console.log('滑动到距离底部100px的时候触发,可以放 。。业务逻辑');
},
//下拉执行的时候触发 (下拉刷新)
onPullDownRefresh () {
//放要执行的动作....
wx.stopPullDownRefresh()
//停止下拉刷新效果的api,如果发现进入刷新状态无法停止,可以用这个
},
获取数据
思路:在页面加载的时候,会先请求10条数据,然后用户滑动到页面底部,继续加载11-20条数据,以此类推。
data() {//变量配置处
return {
hots: [], //活动数据列表
params:{
limit: 10,//默认每次请求10条
start: 0,
},
//是否还有下一页,即是否还有数据
hasMore: true,
dataEnd:false, //数据加载完了
}
},
// 页面生命周期方法之onload
onLoad: function (option) {
this.getList();//页面加载获取前10条数据
},
//页面滑动到底部触发的方法之onReachBottom
onReachBottom(){
this.handleTolower();//滑动到底部加载
},
// methods 里面放方法
methods:{
// 获取接口数据--因为会反复执行,封装在这里
getList() {
uni.showLoading({
title:"加载中" //为了网络慢,给用户的友好等待提示
});
//进行接口数据请求
uni.request({
url: getApp().globalData.url+"list",//地址
method:"POST",//方式
data: this.params,//参数
success: (result) => {
if (result.data.data.length === 0) {
this.hasMore = false;
this.dataEnd=true
return;
}
//数据拼接
this.hots = [...this.hots, ...result.data.data]
},
complete(){
uni.hideLoading(); //loading 弹窗end
}
})
},//getList() 方法end
//触底请求的方法,就是修改参数
handleTolower() {
// 1、修改参数 skip +=limit 2、重新发送请求 3、数据叠加
if (this.hasMore) {
this.params.start += this.params.limit;
this.getList();
} else {
// 弹窗形式或者其他形式告诉用户没有数据了
this.dataEnd=true
}
}// handleTolower() end
}
猜你喜欢
- 2024-11-03 「大促最后1天」带你了解家庭的生命周期
- 2024-11-03 uniapp-权限处理(uniapp弹出通知权限)
- 2024-11-03 万能前端框架uni app初探03:底部导航开发
- 2024-11-03 uniapp开发安卓应用踩坑记(uniapp开发项目)
- 2024-11-03 《微信小程序开发从入门到实战》学习二十七
- 2024-11-03 uni-app plus.runtime.arguments 获取参数
- 2024-11-03 uniapp入门到进阶(必备知识扩展-1) - vue3你不知道的那些事
- 2024-11-03 遵义小红椒 带你进 uni-app 入坑指南
- 2024-11-03 uni-app从入门到进阶 系统完成项目实战
- 2024-11-03 4、类京东商城小程序_分类导航区域实现
- 最近发表
-
- 如何在 Linux 上安装 Java_怎么在linux中安装jdk
- Linux中tar命令打包路径相关问题_linux怎么用tar打包一个目录
- 常用linux系统常用扫描命令汇总_常用linux系统常用扫描命令汇总表
- VM下linux虚拟机新建过程(有图)_linux虚拟机创建新用户命令
- 系统小技巧:迁移通过Wubi方式安装的Ubuntu系统
- 文件系统(八):Linux JFFS2文件系统工作原理、优势与局限
- 如何利用ftrace精确跟踪特定进程调度信息
- prometheus网络监控之fping-exporter
- hyper linux的实操步骤,hyper-v批量管理工具的使用指南
- 2021年,运维工程师笔试真题(二)(附带答案)
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)