From 5e440a7dc434c43eb828fa62cf9c12b0078b8565 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期一, 20 一月 2025 11:36:18 +0800 Subject: [PATCH] !173 发布 5.3.0-BETA 公测版本 Merge pull request !173 from 疯狂的狮子Li/dev --- src/layout/components/AppMain.vue | 71 +++++++++++++++++++++++++---------- 1 files changed, 50 insertions(+), 21 deletions(-) diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue index 5649fac..0d402f2 100644 --- a/src/layout/components/AppMain.vue +++ b/src/layout/components/AppMain.vue @@ -1,41 +1,57 @@ <template> <section class="app-main"> <router-view v-slot="{ Component, route }"> - <transition :enter-active-class="animante" mode="out-in"> - <keep-alive :include="tagsViewStore.cachedViews"> - <component v-if="!route.meta.link" :is="Component" :key="route.path" /> + <transition v-if="!route.meta.noCache" :enter-active-class="animante" mode="out-in"> + <keep-alive v-if="!route.meta.noCache" :include="tagsViewStore.cachedViews"> + <component :is="Component" v-if="!route.meta.link" :key="route.path" /> </keep-alive> + </transition> + <transition v-if="route.meta.noCache" :enter-active-class="animante" mode="out-in"> + <component :is="Component" v-if="!route.meta.link && route.meta.noCache" :key="route.path" /> </transition> </router-view> <iframe-toggle /> </section> </template> -<script lang="ts"> -export default { - name: 'AppMin' -} -</script> - -<script setup lang="ts"> -import useTagsViewStore from '@/store/modules/tagsView'; +<script setup name="AppMain" lang="ts"> import useSettingsStore from '@/store/modules/settings'; -import IframeToggle from './IframeToggle/index.vue' -import { ComponentInternalInstance } from "vue"; +import useTagsViewStore from '@/store/modules/tagsView'; + +import IframeToggle from './IframeToggle/index.vue'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; +const route = useRoute(); const tagsViewStore = useTagsViewStore(); // 闅忔満鍔ㄧ敾闆嗗悎 const animante = ref<string>(''); const animationEnable = ref(useSettingsStore().animationEnable); -watch(()=> useSettingsStore().animationEnable, (val) => { +watch( + () => useSettingsStore().animationEnable, + (val: boolean) => { animationEnable.value = val; if (val) { - animante.value = proxy?.animate.animateList[Math.round(Math.random() * proxy?.animate.animateList.length)] as string; + animante.value = proxy?.animate.animateList[Math.round(Math.random() * proxy?.animate.animateList.length)] as string; } else { - animante.value = proxy?.animate.defaultAnimate as string; + animante.value = proxy?.animate.defaultAnimate as string; } -}, { immediate: true }); + }, + { immediate: true } +); + +onMounted(() => { + addIframe() +}) + +watchEffect((route) => { + addIframe() +}) + +function addIframe() { + if (route.meta.link) { + useTagsViewStore().addIframeView(route) + } +} </script> <style lang="scss" scoped> @@ -47,7 +63,7 @@ overflow: hidden; } -.fixed-header+.app-main { +.fixed-header + .app-main { padding-top: 50px; } @@ -57,17 +73,30 @@ min-height: calc(100vh - 84px); } - .fixed-header+.app-main { + .fixed-header + .app-main { padding-top: 84px; } } </style> - <style lang="scss"> // fix css style bug in open el-dialog .el-popup-parent--hidden { .fixed-header { - padding-right: 17px; + padding-right: 6px; } } + +::-webkit-scrollbar { + width: 6px; + height: 6px; +} + +::-webkit-scrollbar-track { + background-color: #f1f1f1; +} + +::-webkit-scrollbar-thumb { + background-color: #c0c0c0; + border-radius: 3px; +} </style> -- Gitblit v1.9.3