From fa611ff2eeaac289931eb0e21a962743fb271ba7 Mon Sep 17 00:00:00 2001
From: sean.zhou <sean.zhou@dji.com>
Date: Fri, 23 Sep 2022 17:46:57 +0800
Subject: [PATCH] Update v1.2.0

---
 src/pages/page-pilot/pilot-home.vue |   20 +++++++++-----------
 1 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/src/pages/page-pilot/pilot-home.vue b/src/pages/page-pilot/pilot-home.vue
index 42416fb..fd15838 100644
--- a/src/pages/page-pilot/pilot-home.vue
+++ b/src/pages/page-pilot/pilot-home.vue
@@ -130,9 +130,8 @@
 import cloudapi from '/@/assets/icons/cloudapi.png'
 import { RightOutlined, CloudOutlined, CloudSyncOutlined, SyncOutlined } from '@ant-design/icons-vue'
 import { useMyStore } from '/@/store'
-import ReconnectingWebSocket from 'reconnecting-websocket'
-import websocket from '/@/api/websocket'
 import { DeviceStatus } from '/@/types/device'
+import { useConnectWebSocket } from '/@/hooks/use-connect-websocket'
 
 const root = getRoot()
 const gatewayState = ref<boolean>(localStorage.getItem(ELocalStorageKey.GatewayOnline) === 'true')
@@ -211,8 +210,10 @@
 
 const store = useMyStore()
 
-const wsGetMsg = async (res: any) => {
-  const payload = JSON.parse(res.data)
+const messageHandler = async (payload: any) => {
+  if (!payload) {
+    return
+  }
   switch (payload.biz_code) {
     case EBizCode.DeviceOnline: {
       console.info('online: ', payload)
@@ -241,8 +242,11 @@
       break
   }
 }
+
+// 监听ws 消息
+useConnectWebSocket(messageHandler)
+
 let bindNum: number
-let socket: ReconnectingWebSocket
 
 onMounted(() => {
   apiPilot.onBackClickReg()
@@ -259,8 +263,6 @@
   }
   device.data.sn = apiPilot.getAircraftSN()
   getDeviceInfo()
-
-  socket = websocket.init(wsGetMsg)
 
   const isLoaded = apiPilot.isComponentLoaded(EComponentName.Thing)
   if (isLoaded) {
@@ -300,10 +302,6 @@
   window.wsConnectCallback = arg => {
     wsConnectCallback(arg)
   }
-})
-
-onUnmounted(() => {
-  socket.close()
 })
 
 const connectCallback = async (arg: any) => {

--
Gitblit v1.9.3