Explorar o código

fix(components,composables): 修复任务详情弹窗状态管理和模拟通信问题

修复弹窗初始状态未重置导致的问题
优化WebSocket模拟通信的健壮性和错误处理
添加动画和模拟完成标志防止重复触发
easyforever hai 1 semana
pai
achega
6a8c0d27bb
Modificáronse 2 ficheiros con 180 adicións e 94 borrados
  1. 4 3
      src/components/Footer.vue
  2. 176 91
      src/composables/useTaskDetail.ts

+ 4 - 3
src/components/Footer.vue

@@ -29,18 +29,19 @@
 </template>
 
 <script setup lang="ts">
-import { ref } from 'vue'
+import { ref, nextTick } from 'vue'
 import TaskDetailModal from './TaskDetailModal.vue'
 import { robotConfig } from '../config/robotConfig'
 
 // 弹窗状态
 const taskDetailVisible = ref(false)
-const currentRobotType = ref('fireSafety')
+const currentRobotType = ref('')
 const robots = robotConfig
 
 // 显示任务详情
-const showTaskDetail = (robotType: string) => {
+const showTaskDetail = async (robotType: string) => {
   currentRobotType.value = robotType
+  await nextTick()
   taskDetailVisible.value = true
 }
 

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 176 - 91
src/composables/useTaskDetail.ts