加上下拉刷新
This commit is contained in:
@@ -37,7 +37,13 @@
|
||||
</view>
|
||||
|
||||
<!-- 上报记录列表 -->
|
||||
<scroll-view class="record-list" scroll-y>
|
||||
<scroll-view
|
||||
class="record-list"
|
||||
scroll-y
|
||||
refresher-enabled
|
||||
:refresher-triggered="refresherTriggered"
|
||||
@refresherrefresh="onPullRefresh"
|
||||
>
|
||||
<!-- 记录卡片 -->
|
||||
<view v-for="record in reportRecords" :key="record.id" class="record-card">
|
||||
<!-- 标题 + 状态标签 -->
|
||||
@@ -82,7 +88,7 @@
|
||||
|
||||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
import { onReachBottom, onPullDownRefresh, onShow } from '@dcloudio/uni-app'
|
||||
import { onShow } from '@dcloudio/uni-app'
|
||||
import { getMyOrderList } from '../../api/api.js'
|
||||
// 分页
|
||||
const pageNum = ref(1) // 当前页
|
||||
@@ -90,6 +96,7 @@ const pageSize = ref(10) // 每页条数
|
||||
const total = ref(0) // 总条数
|
||||
const loading = ref(false) // 加载状态
|
||||
const noMore = ref(false) // 是否没有更多
|
||||
const refresherTriggered = ref(false) // 下拉刷新触发状态
|
||||
// 筛选状态
|
||||
const activeStatus = ref('all') // 全部/待分配/待解决/已完成
|
||||
const activeType = ref('all') // 全部/公共报修/个人报修
|
||||
@@ -151,23 +158,17 @@ const getReportList = (isRefresh = false) => {
|
||||
.finally(() => {
|
||||
loading.value = false
|
||||
if (isRefresh) {
|
||||
uni.stopPullDownRefresh()
|
||||
refresherTriggered.value = false
|
||||
}
|
||||
})
|
||||
}
|
||||
// 上拉加载更多
|
||||
onReachBottom(() => {
|
||||
if (noMore.value || loading.value) return
|
||||
pageNum.value++
|
||||
getReportList()
|
||||
})
|
||||
|
||||
// 下拉刷新
|
||||
onPullDownRefresh(() => {
|
||||
const onPullRefresh = () => {
|
||||
refresherTriggered.value = true
|
||||
pageNum.value = 1
|
||||
noMore.value = false
|
||||
getReportList(true)
|
||||
})
|
||||
}
|
||||
|
||||
// 筛选/分页重置后重新拉数据
|
||||
const reloadList = () => {
|
||||
|
||||
Reference in New Issue
Block a user