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