Merge pull request '修复订单列表重复请求' (#3) from feature/huangting into master

Reviewed-on: #3
This commit is contained in:
2026-06-30 13:33:48 +08:00

View File

@@ -1,5 +1,5 @@
<script setup lang="ts">
import { onMounted, reactive, ref, watch } from 'vue'
import { nextTick, onMounted, reactive, ref, watch } from 'vue'
import { RouterLink } from 'vue-router'
import { Search, ClipboardList } from 'lucide-vue-next'
import { fetchOrderList } from '@/api/orders'
@@ -8,6 +8,7 @@ import type { CommodityOrder, CommodityOrderSearch } from '@/types/order'
import { commodityTypeText } from '@/utils/constants'
const listLoading = ref(false)
const listDisabled = ref(false)
const requesting = ref(false)
const refreshing = ref(false)
const finished = ref(false)
@@ -36,6 +37,7 @@ const loadOrders = async (reset = false) => {
if (reset) {
query.pageNum = 1
finished.value = false
listDisabled.value = true
}
try {
const page = await fetchOrderList(buildSearchQuery())
@@ -46,6 +48,10 @@ const loadOrders = async (reset = false) => {
requesting.value = false
listLoading.value = false
refreshing.value = false
if (reset) {
await nextTick()
listDisabled.value = false
}
}
}
@@ -87,7 +93,14 @@ onMounted(() => loadOrders(true))
</van-tabs>
<van-pull-refresh v-model="refreshing" @refresh="onRefresh">
<van-list v-model:loading="listLoading" :finished="finished" finished-text="没有更多订单" @load="loadOrders">
<van-list
v-model:loading="listLoading"
:disabled="listDisabled"
:finished="finished"
:immediate-check="false"
finished-text="没有更多订单"
@load="loadOrders"
>
<div v-if="records.length" class="order-list">
<RouterLink v-for="order in records" :key="order.id" class="order-card" :to="`/orders/${order.id}`">
<div class="order-card__main">