From ff77b2f0a02a1f4103d2c2fcfc0fafa22b795274 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Sun, 20 Apr 2025 16:30:52 +0800
Subject: [PATCH] feat:hook中watch增加清除

---
 src/hooks/useTaskWayline/useTaskWayline.js |   23 +++++++++++++++--------
 1 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/src/hooks/useTaskWayline/useTaskWayline.js b/src/hooks/useTaskWayline/useTaskWayline.js
index 506c46c..9855e18 100644
--- a/src/hooks/useTaskWayline/useTaskWayline.js
+++ b/src/hooks/useTaskWayline/useTaskWayline.js
@@ -4,9 +4,9 @@
  * @LastEditors: shuishen 1109946754@qq.com
  * @LastEditTime: 2025-04-19 19:00:36
  * @FilePath: \command-center-dashboard\src\hooks\useTaskWayline\useTaskWayline.js
- * @Description: 
- * 
- * Copyright (c) 2025 by shuishen, All Rights Reserved. 
+ * @Description:
+ *
+ * Copyright (c) 2025 by shuishen, All Rights Reserved.
  */
 import lineImg from '@/assets/images/arrow-right-blue.png'
 import rwqfdImg from '@/assets/images/signMachineNest/rwqfd.png'
@@ -24,6 +24,8 @@
 export function useTaskWayline () {
   let viewer = null
   let deviceOsdInfo = null
+  let taskWatch = null
+  let deviceWatch = null
 
   // 解析kmz文件
   const parsingFiles = async url => {
@@ -117,8 +119,6 @@
   function setAircraftGltf () {
     const host = deviceOsdInfo.value?.data?.host
 
-    console.log(host, 1111111111)
-
     const aircraftEntity = viewer?.entities.getById('aircraftGltf')
     const position = Cesium.Cartesian3.fromDegrees(host?.longitude, host?.latitude, host?.height)
     if (aircraftEntity) {
@@ -180,7 +180,9 @@
     viewer = v
     deviceOsdInfo = computed(() => wsInfo.value?.device_osd)
 
-    watch(taskDetails,
+    taskWatch?.()
+
+    taskWatch = watch(taskDetails,
       () => {
         if (taskDetails.value?.way_lines?.length) {
           parsingFiles(taskDetails.value.way_lines[0].url)
@@ -189,7 +191,9 @@
       { immediate: true }
     )
 
-    watch(deviceOsdInfo, () => {
+    deviceWatch?.()
+
+    deviceWatch = watch(deviceOsdInfo, () => {
       const host = deviceOsdInfo.value?.data?.host
 
       if (!host) return
@@ -208,6 +212,9 @@
   onBeforeUnmount(() => {
     mapEntityRemove()
     removeEntitys()
+
+    taskWatch?.()
+    deviceWatch?.()
   })
 
   return {
@@ -215,4 +222,4 @@
     removeEntitys,
     mapEntityRemove,
   }
-}
\ No newline at end of file
+}

--
Gitblit v1.9.3