uniapp(5)滚动列表scroll-view

html 复制代码
	<scroll-view scroll-y @refresherrefresh='getFresh' 
@scrolltolower="lowerBottom" @scroll="scroll" 
				style="height:52vh;border-radius:
 10rpx;padding-top: 24rpx;">
				<view class="flex_center" >
				<view class="cententCard pd32 mgb16 radius20" 
style="width: 100%;" v-for="(item,index) in taskList"
					:key="index" @click="gotoTaskDetail(item)">
					<view class="taskTitle flex_left_row mgb16">
<view class="flex_left_row" style="margin-top: 10rpx;">
				<text class="fs24 mgr16 bgtext1 radius8 text1">
                        {{item.text1}}
                </text>
				<text class="fs24 bgtext2 radius8 text2">{{item.text2}}</text>
							</view>
						</view>
					</view>
				</view>
			</view>
			</scroll-view>

scroll-view | uni-app官网

|----------------|-------------|---|-------------------------------|
| @scrolltoupper | EventHandle | | 滚动到顶部/左边,会触发 scrolltoupper 事件 |

|---------|-------------|---|-----------------------------------------------------------------------------------------|
| @scroll | EventHandle | | 滚动时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY} |

使用竖向滚动时,需要给 <scroll-view> 一个固定高度,通过 css 设置 height;

1、触底加载下一页

进入页面默认进行数据加载,加载的列表数据为taskList数组,根据后端返回一次10条进行加载

触底触发@scrolltolower="lowerBottom"

这个时候需要进行第一次判断

后端返回的数据是否满足约定的10条,或者page*limit<total的判断

获取到的数组存在addList数组中,push到taskList中

如果没有加载到全部数据,触底时候继续触发

如果满足就提示已经没有更多数据了

javascript 复制代码
			lowerBottom() { //触底事件
			console.log("触底");
			console.log(this.addList);
				 if (this.addList.length < 10) {
					uni.showToast({
						title: `没有更多数据了`,
						icon: 'none',
						duration: 2000
					})
				} else {
					this.page++
					this.getplanList()
				}
			},
			getplanList(){
				// 获取接口最新list数据
				// 模拟接口请求
				let listMock=[
					{
						contentID: '2904398015',
						planStatusStr: 'hahahha',
						text1: '线上',
						text2: '月结',
						info: "1.具备良好的物品识别和分类能,
						money: '300'
					}
				]
                this.addList=listMock;
				this.taskList.push(...listMock)
				
			}
相关推荐
Wect36 分钟前
React 性能优化精讲
前端·react.js·性能优化
追风筝的人er1 小时前
SpringBoot+Vue3 企业考勤如何处理法定假期?节假日方案、调休补班与工作日判断链路拆解
前端·vue.js·后端
无敌的黑星星1 小时前
Java8 CompletableFuture 实战指南
linux·前端·python
雁鸣零落2 小时前
如何在 Chrome 中查看其他浏览器的书签?书签空间订阅与侧边栏只读切换指南
前端·chrome·edge浏览器
hpoenixf2 小时前
一天上线 + 零返工:我如何给复杂前端需求建立“安全感”
前端
广州华水科技3 小时前
单北斗GNSS变形监测系统在水利工程安全保障中的应用与优势分析
前端
yqcoder3 小时前
CSS 外边距重叠(Margin Collapsing):现象、原理与完美解决方案
前端·css
山楂树の4 小时前
图像标注大坑:img图片 + Canvas 叠加标注,同步放大后标注位置偏移、对不齐?详解修复方案及亚像素处理原理
前端·css·学习·canva可画
本山德彪4 小时前
我做了一个拼豆图纸生成器,把照片秒变图纸
前端
DTrader4 小时前
用TS无法实盘量化? - 实盘均线策略
前端·api