fix(projects): fix disabled page animate

This commit is contained in:
Soybean 2024-04-16 01:15:45 +08:00
parent 42e16a0165
commit 23f283aa31
2 changed files with 9 additions and 6 deletions

View File

@ -1,4 +1,5 @@
<script setup lang="ts">
import { computed } from 'vue';
import { useAppStore } from '@/store/modules/app';
import { useThemeStore } from '@/store/modules/theme';
import { useRouteStore } from '@/store/modules/route';
@ -19,12 +20,14 @@ withDefaults(defineProps<Props>(), {
const appStore = useAppStore();
const themeStore = useThemeStore();
const routeStore = useRouteStore();
const transitionName = computed(() => (themeStore.page.animate ? themeStore.page.animateMode : ''));
</script>
<template>
<RouterView v-slot="{ Component, route }">
<Transition
:name="themeStore.page.animateMode"
:name="transitionName"
mode="out-in"
@before-leave="appStore.setContentXScrollable(true)"
@after-enter="appStore.setContentXScrollable(false)"

View File

@ -35,11 +35,11 @@ export const useAppStore = defineStore(SetupStoreId.App, () => {
async function reloadPage(duration = 300) {
setReloadFlag(false);
if (duration > 0) {
await new Promise(resolve => {
setTimeout(resolve, duration);
});
}
const d = themeStore.page.animate ? duration : 40;
await new Promise(resolve => {
setTimeout(resolve, d);
});
setReloadFlag(true);
}