From 269b41f9de3e34f06e123341c8f1fb7d9ef4b87f Mon Sep 17 00:00:00 2001
From: yangyin <18723093654@163.com>
Date: 星期一, 02 十二月 2024 16:57:05 +0800
Subject: [PATCH] 修改文字大小

---
 src/hooks/usePageDisplay.ts |   41 +++++++++++++++++++++++++++--------------
 1 files changed, 27 insertions(+), 14 deletions(-)

diff --git a/src/hooks/usePageDisplay.ts b/src/hooks/usePageDisplay.ts
index e9cb5f1..78d866d 100644
--- a/src/hooks/usePageDisplay.ts
+++ b/src/hooks/usePageDisplay.ts
@@ -1,23 +1,36 @@
-import { onActivated, onDeactivated, ref } from 'vue';
+import { onActivated, onBeforeUnmount, onDeactivated, onMounted, onUnmounted, ref } from 'vue';
+import router from '../router';
 
 /**
  * 寮�鍚矾鐢辩紦瀛橀〉闈紝绂诲紑鏃讹紝鍜岃繘鍏ユ椂鍙栨秷/寮�鍚闃呬簨浠�
  * @returns
  */
-export const usePageDisplay = (pageShow?: () => void, pageHide?: () => void) => {
-	const haveExecutedMounted = ref(false);
-	onActivated(() => {
-		if (!haveExecutedMounted.value) {
-			return;
-		}
-		pageShow?.();
-	});
+export const usePageDisplay = (pageShow?: () => void, pageHide?: () => void, needExecutedMounted = true) => {
+	const haveExecutedMounted = ref(!needExecutedMounted);
+	const currentRoute = router.currentRoute.value;
 
-	onDeactivated(() => {
-		pageHide?.();
-	});
+	const isKeepAlive = currentRoute.meta.isKeepAlive ?? false;
+	if (isKeepAlive) {
+		onActivated(() => {
+			if (!haveExecutedMounted.value) {
+				return;
+			}
+			pageShow?.();
+		});
+
+		onDeactivated(() => {
+			pageHide?.();
+		});
+	} else {
+		onMounted(() => {
+			pageShow?.();
+		});
+		onBeforeUnmount(() => {
+			pageHide?.();
+		});
+	}
 
 	return {
-        haveExecutedMounted
-    };
+		haveExecutedMounted,
+	};
 };

--
Gitblit v1.9.3