Merge pull request #257 from L1yp/fix-transition-hot-refresh

fix: 修复transition组件导致的白屏(重现: 热更新transition下的组件script代码切换tab即可)
This commit is contained in:
Ah jung
2023-08-10 15:07:26 +08:00
committed by GitHub

View File

@@ -1,12 +1,20 @@
<template> <template>
<RouterView> <RouterView>
<template #default="{ Component, route }"> <template #default="{ Component, route }">
<transition :name="getTransitionName" mode="out-in" appear> <template v-if="mode === 'production'">
<transition :name="getTransitionName" mode="out-in" appear>
<keep-alive v-if="keepAliveComponents.length" :include="keepAliveComponents">
<component :is="Component" :key="route.fullPath" />
</keep-alive>
<component v-else :is="Component" :key="route.fullPath" />
</transition>
</template>
<template v-else>
<keep-alive v-if="keepAliveComponents.length" :include="keepAliveComponents"> <keep-alive v-if="keepAliveComponents.length" :include="keepAliveComponents">
<component :is="Component" :key="route.fullPath" /> <component :is="Component" :key="route.fullPath" />
</keep-alive> </keep-alive>
<component v-else :is="Component" :key="route.fullPath" /> <component v-else :is="Component" :key="route.fullPath" />
</transition> </template>
</template> </template>
</RouterView> </RouterView>
</template> </template>
@@ -39,9 +47,11 @@
return unref(isPageAnimate) ? unref(pageAnimateType) : ''; return unref(isPageAnimate) ? unref(pageAnimateType) : '';
}); });
const mode = import.meta.env.MODE;
return { return {
keepAliveComponents, keepAliveComponents,
getTransitionName, getTransitionName,
mode,
}; };
}, },
}); });