vue3.0 使用 keep-alive 标签无效, 及其在 vue admin Layout 无效
作者:互联网
先说一下问题所在,虽然vue3.0 不需要 root div, 但是
keep-alive
transition
这两个标签都需要
错误示范
root div
不能加在 component 外层
<transition v-if="settings.mainNeedAnimation" name="fade-transform" mode="out-in">
<keep-alive :include="cachedViews">
<div>
<component :is="Component" :key="key" />
</div>
</keep-alive>
</transition>
正确使用
路由组件使用
<router-view v-slot="{ Component }">
<transition name="fade-transform" mode="out-in">
<keep-alive :include="cachedViews">
<component :is="Component" />
</keep-alive>
</transition>
</router-view>
路由页面代码(记住你的单个页面一定要使用一个 root div
),例如下面是一个.vue 文件
<template>
<div>
<div></div>
<div></div>
<div></div>
xxxxxxxxxxxxxxx
</div>
</template>
如果你是多级路由, 每一个 router-view
内部都是需要 keep-alive
包裹, keep-alive
内部不能有任何判断条件, 要简约到只有上面例子的代码
这里是我遇到的问题
其他注意点介绍
标签:vue,Layout,无效,alive,keep,div,root,路由 来源: https://www.cnblogs.com/shiazhen/p/16578873.html