Преглед изворни кода

fix: 修复问题答复列表加载状态卡住

为列表请求增加独立请求锁,避免与 van-list 的 loading 状态冲突导致下拉后一直显示加载中。

Made-with: Cursor
haifeng.zhang пре 6 дана
родитељ
комит
c65fb438d3
1 измењених фајлова са 5 додато и 1 уклоњено
  1. 5 1
      src/subPages/pages/reportProblems/index.vue

+ 5 - 1
src/subPages/pages/reportProblems/index.vue

@@ -219,17 +219,20 @@ const pageInfo = ref({
 const loading = ref(false)
 const loading = ref(false)
 const finished = ref(false)
 const finished = ref(false)
 const listInitialized = ref(false)
 const listInitialized = ref(false)
+const listRequesting = ref(false)
 
 
 const resetQuestionList = () => {
 const resetQuestionList = () => {
   list.value = []
   list.value = []
   pageInfo.value.pageNumber = 1
   pageInfo.value.pageNumber = 1
   finished.value = false
   finished.value = false
   loading.value = false
   loading.value = false
+  listRequesting.value = false
 }
 }
 
 
 const questList = async () => {
 const questList = async () => {
-  if (loading.value || finished.value) return
+  if (listRequesting.value || finished.value) return
 
 
+  listRequesting.value = true
   loading.value = true
   loading.value = true
   try {
   try {
     const currentPage = pageInfo.value.pageNumber
     const currentPage = pageInfo.value.pageNumber
@@ -244,6 +247,7 @@ const questList = async () => {
     pageInfo.value.pageNumber = currentPage + 1
     pageInfo.value.pageNumber = currentPage + 1
     finished.value = records.length < pageInfo.value.pageSize
     finished.value = records.length < pageInfo.value.pageSize
   } finally {
   } finally {
+    listRequesting.value = false
     loading.value = false
     loading.value = false
   }
   }
 }
 }