From 9fe113a778a94823185a1fa35ab316987b2f3220 Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期四, 15 五月 2025 09:25:01 +0800
Subject: [PATCH] 前端定时清理websockect推送数据在浏览器的缓存

---
 UI-Project/src/views/largescreendisplay/screendisplay.vue |   38 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 38 insertions(+), 0 deletions(-)

diff --git a/UI-Project/src/views/largescreendisplay/screendisplay.vue b/UI-Project/src/views/largescreendisplay/screendisplay.vue
index eeb630a..11dad86 100644
--- a/UI-Project/src/views/largescreendisplay/screendisplay.vue
+++ b/UI-Project/src/views/largescreendisplay/screendisplay.vue
@@ -145,6 +145,7 @@
     z: 1
   }));
 
+
   const optionOne = {
     title: {
       text: title,
@@ -522,6 +523,28 @@
 const chartTemp = ref(null)
 const chartHollow = ref(null)
 
+const cleanupWebSocketData = (completeCleanup) => {
+  if (completeCleanup) {
+    // 瀹屽叏娓呯悊
+    rawGlassStorageDetailList.value = [];
+    orderDTOS.value = [];
+    // ...鍏朵粬鏁扮粍
+  } else {
+    // 閮ㄥ垎娓呯悊 - 淇濈暀鏈�杩戞暟鎹�
+    const MAX_ITEMS = 50;
+    rawGlassStorageDetailList.value = rawGlassStorageDetailList.value.slice(-MAX_ITEMS);
+    orderDTOS.value = orderDTOS.value.slice(-MAX_ITEMS);
+    // ...鍏朵粬鏁扮粍
+  }
+  
+  // 娓呯悊鍥捐〃
+  [myChart, myChart2, myChartLoad, myChartEdg, myChartTemp, myChartHollow].forEach(chart => {
+    if (chart) {
+      chart.clear();
+      // 濡傛灉闇�瑕侊紝鍙互閲嶆柊鍒濆鍖栧浘琛�
+    }
+  });
+};
 
 // 鍦ㄧ粍浠舵寕杞芥椂璁剧疆榛樿鏃堕棿鑼冨洿
 onMounted(async () => {
@@ -541,6 +564,21 @@
   // 璁剧疆鏃堕棿鑼冨洿涓� [寮�濮嬫椂闂�, 缁撴潫鏃堕棿]
   // timeRange.value = [startTime.format('YYYY-MM-DD HH:mm:ss'), endTime.format('YYYY-MM-DD HH:mm:ss')];
 
+  const cleanupInterval = setInterval(() => {
+    cleanupWebSocketData(true); // 瀹屽叏娓呯悊
+  }, 3000);
+  
+  // 姣忔鏀跺埌娑堟伅鏃舵鏌ユ暟鎹噺
+  const originalHandleMessage = handleMessage;
+  handleMessage = (data) => {
+    originalHandleMessage(data);
+    cleanupWebSocketData(false); // 閮ㄥ垎娓呯悊
+  };
+  
+  onUnmounted(() => {
+    clearInterval(cleanupInterval);
+    cleanupWebSocketData(true); // 缁勪欢鍗歌浇鏃跺畬鍏ㄦ竻鐞�
+  });
 });
 // onMounted(() => {
 //   socket = initializeWebSocket(socketUrl, handleMessage);

--
Gitblit v1.8.0