From e85193ea9acae04e9dbf6ca5b97f1735d4cc2e13 Mon Sep 17 00:00:00 2001
From: songshankun <songshankun@foxmail.com>
Date: 星期二, 28 十一月 2023 16:33:05 +0800
Subject: [PATCH] style: 调整表格无数据文案

---
 src/stores/tasks.ts |   53 ++++++++++++++++++++++++++---------------------------
 1 files changed, 26 insertions(+), 27 deletions(-)

diff --git a/src/stores/tasks.ts b/src/stores/tasks.ts
index 92035a0..6ebd205 100644
--- a/src/stores/tasks.ts
+++ b/src/stores/tasks.ts
@@ -28,15 +28,14 @@
     return getTaskList(params)
       .then((res) => {
         channels.value = res.data
-
-        // 棣栨鑾峰彇閫氶亾鏁版嵁鏃惰嚜鍔ㄩ�変腑绗竴涓换鍔�
-        if (!activeTask?.value) {
-          selectFirstTask(channels.value)
-        }
       })
       .catch((err) => {
         console.error(err)
         channels.value = []
+      })
+      .finally(() => {
+        // 棣栨鑾峰彇閫氶亾鏁版嵁鏃惰嚜鍔ㄩ�変腑绗竴涓换鍔�
+        selectFirstTask(channels.value)
       })
   }
 
@@ -44,12 +43,19 @@
     const firstNotEmptyChannel = Object.entries(channels).find((ele) => {
       const taskList = (ele[1] as TasksResponse)?.Tasks
 
-      return !!taskList.length
+      return !!taskList?.length
     })
 
     if (firstNotEmptyChannel) {
       const channelNumber = +firstNotEmptyChannel[0]
       activeTask.value = channels[channelNumber].Tasks[0]
+      setActiveChannel(channelNumber)
+    } else {
+      // 濡傛灉娌℃湁浠诲姟灏辨竻绌哄綋鍓嶉�変腑鐨勪换鍔�
+      activeTask.value = undefined
+      if (channels[0]) {
+        setActiveChannel(0)
+      }
     }
   }
 
@@ -77,10 +83,14 @@
   /**
    * 鍒锋柊鎵�鏈夋暟鎹�
    */
-  function reload(channel: number) {
+  function reloadChannel(channel: number) {
     getChannels(currentType.value).then(() => {
       autoSelectTask(channel)
     })
+  }
+
+  function reloadAllData() {
+    getChannels(currentType.value)
   }
 
   function moreChannelTasksBtn(channelNumber: number) {
@@ -119,37 +129,26 @@
 
   /** 褰撳墠楂樹寒鐨勪换鍔� */
   const activeTask = ref<Task>()
-  function setActiveTask(task: Task) {
+  function setActiveTask(task: Task | undefined) {
     activeTask.value = task
   }
 
-  const requestParamsMap = ref<{
-    [channel: number]: TaskListParams
-  }>({})
-  function getParamsByChannel(channel: number) {
-    return (
-      requestParamsMap.value[channel] ?? {
-        type: 1,
-        offset: 0,
-        limit: 3
-      }
-    )
+  const activeChannel = ref<number>(0)
+  function setActiveChannel(channelNumber: number) {
+    activeChannel.value = channelNumber
   }
 
-  function setParamsByChannel(channel: number, params: TaskListParams) {
-    requestParamsMap.value[channel] = params
-  }
   return {
     channels,
     getChannels,
     moreBtnStatus,
     activeTask,
-    reload,
+    reloadChannel,
     setActiveTask,
-    requestParamsMap,
-    getParamsByChannel,
-    setParamsByChannel,
     moreChannelTasksBtn,
-    foldChannelTasksBtn
+    foldChannelTasksBtn,
+    reloadAllData,
+    activeChannel,
+    setActiveChannel
   }
 })

--
Gitblit v1.8.0