<router-view #default="{ Component, route }">
          <keep-alive :include="['User']">
            <component :is="Component" :key="route.name" />
          </keep-alive>
  </router-view>

vue3的setup无法组件命名,keep-alive include必须要组件命名

匹配首先检查组件自身的 name 选项,如果 name 选项不可用,则匹配它的局部注册名称 (父组件 components 选项的键值)。匿名组件不能被匹配。

所以在页面组件中需要添加 name才能动态keep-alive

<script lang="ts">
export default {
  name: 'User'
}
</script>
Logo

前往低代码交流专区

更多推荐