在Vue3中使用缓存组件keep-alive vue3缓存组件

在Vue3中使用缓存组件keep-alive vue3缓存组件

  • 1、路由开启缓存
  • [2、App.vue中使用 keep-alive](#2、App.vue中使用 keep-alive)
  • [3、缓存组件激活 生命周期](#3、缓存组件激活 生命周期)
    • [3.1 组合式 语法风格](#3.1 组合式 语法风格)
    • [3.2 选项式 语法风格](#3.2 选项式 语法风格)

1、路由开启缓存

js 复制代码
const routes = [
  {
    path: '/',
    component: Home,
    meta: {
      keepAlive: true, // 设置需要缓存的组件
    },
  },
  {
    path: '/about',
    component: About,
    meta: {
      keepAlive: true, // 设置需要缓存的组件
    },
  },
  // 其他路由配置
];

2、App.vue中使用 keep-alive

keep-alive组件 在vue3中写法和vue2不一样

html 复制代码
<template>
	<div>
    <!-- Vue3缓存组件,写法和Vue2不一样-->
    <router-view v-slot="{ Component }">
      <!-- 使用 keep-alive 缓存组件 -->
      <keep-alive>
        <component :is="Component" />
      </keep-alive>
    </router-view>
  </div>
</template>

<style>
#app {
  text-align: center;
  color: var(--ep-text-color-primary);
}
</style>

3、缓存组件激活 生命周期

3.1 组合式 语法风格

js 复制代码
<script>
export default {
  activated() {
    // 缓存组件在被激活时会进入这里
  },
};

<script>

3.2 选项式 语法风格

js 复制代码
<script setup>
import { onActivated} from 'vue'

onActivated(() => {
 console.info('缓存组件重新激活')
})
</script>
相关推荐
moyu843 分钟前
Pinia 状态管理:现代 Vue 应用的优雅解决方案
前端
Deepsleep.5 分钟前
吉比特(雷霆游戏)前端二面问题总结
前端·游戏
wycode15 分钟前
# 面试复盘(2)--某硬件大厂前端
前端·面试
怪可爱的地球人17 分钟前
ts枚举(enum)
前端
做你的猫19 分钟前
深入剖析:基于Vue 3与Three.js的3D知识图谱实现与优化
前端·javascript·vue.js
渊不语24 分钟前
富文本编辑器自定义图片等工具栏-完整开发文档
前端
用户239712822487024 分钟前
taro+vue3+vite项目 tailwind 踩坑记,附修复后的模板源码地址
前端
做你的猫28 分钟前
深入剖析:基于Vue 3的高性能AI聊天组件设计与实现
前端·javascript·vue.js
G佳伟30 分钟前
vue拖动排序,vue使用 HTML5 的draggable拖放 API实现内容拖并排序,并更新数组数据
前端·vue.js·html5
Bling_Bling_135 分钟前
ES6新语法特性(第二篇)
开发语言·前端·es6