uni-app 下拉刷新、 上拉触底(列表信息)、 上滑加载(短视频) 一键搞定

一、下拉刷新

1. 首先找到pages.json中

给需要进行下拉刷新的页面设置可以下拉刷新

2. 然后在需要实现下拉刷新的script标签内添加

导入onPullDownRefresh

复制代码
import {onPullDownRefresh} from '@dcloudio/uni-app'

下拉刷新触发的事件

复制代码
onPullDownRefresh(()=> {
	console.log('正在刷新中......');

	setTimeout(function () {
		uni.stopPullDownRefresh();
	}, 1000);
})

二、上拉触底

1.在需要实现上拉触底的script标签内添加

复制代码
import {onPullDownRefresh} from '@dcloudio/uni-app'

onReachBottom(()=>{
	console.log('触底啦!')
})	

三、上滑加载

一般用于短视频,向上滑动触发时间,跳转到下一个视频

1. 在需要实现上滑加载的组件上加上参数touchstart、touchmove、touchend:

复制代码
<view class="layout"  
	  @touchstart="touchStart"
      @touchmove="touchMove"
      @touchend="touchEnd">

    //短视频
</view>

2. 在需要实现上滑加载的script标签内添加

复制代码
// 定义变量
const isLoading = ref(false); // 标记是否正在加载
const startY = ref(0); // 记录触摸开始的Y坐标
const distanceThreshold = 60; // 设置触发加载的距离阈值

// 模拟加载数据的函数
const loadData = () => {
  if (isLoading.value) return; // 如果正在加载,则不重复触发
  isLoading.value = true;
  console.log('加载更多数据...');
  // 模拟加载过程
  setTimeout(() => {
    isLoading.value = false;
    // 这里可以添加实际加载数据的逻辑,比如调用API获取数据
  }, 1000);
};



// 触摸开始事件
const touchStart = (event) => {
  startY.value = event.touches[0].clientY;
};

// 触摸移动事件
const touchMove = (event) => {
  const moveY = event.touches[0].clientY;
  const distance = startY.value - moveY; // 计算滑动的距离
  // 如果向上滑动并且超过阈值,则触发加载
  if (distance > distanceThreshold) {
    loadData();
  }
};

// 触摸结束事件
const touchEnd = () => {
  startY.value = 0; // 重置开始Y坐标
};
相关推荐
坚持学习前端日记9 小时前
UniApp APK打包与Android深度集成能力解析
android·vue.js·uni-app
wetyuo1 天前
【随手记】uniapp + V3 使用TailwindCss3
uni-app·vue·css3·vite
小恒恒3 天前
2025 Vibe Coding 有感
前端·uni-app·trae
一颗小青松3 天前
uniapp使用uni-im
uni-app
2501_916007473 天前
iPhone APP 性能测试怎么做,除了Instruments还有什么工具?
android·ios·小程序·https·uni-app·iphone·webview
2501_915106323 天前
Windows 环境下有哪些可用的 iOS 上架工具, iOS 上架工具的使用方式
android·ios·小程序·https·uni-app·iphone·webview
一颗小青松3 天前
uniapp vue3中app端使用腾讯云点播上传
uni-app·云计算·腾讯云
玄尺_0073 天前
uniapp h5端使浏览器弹出下载框
前端·javascript·uni-app
2501_915106323 天前
iOS 抓包工具有哪些?不同类型的抓包工具可以做什么
android·ios·小程序·https·uni-app·iphone·webview
web前端神器4 天前
vue、uniapp项目循环中能显示每个列表的内容,但是点击的时候传递的参数却不正确
uni-app