在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>
相关推荐
雪芽蓝域zzs4 小时前
第 2 节:基础扩展 - 下拉弹窗常用原生属性
vue.js·elementui
扶风ff5 小时前
新品知识更新太快?用练题簿在线刷题,安排企业培训的小测与复盘
前端·学习·小程序
对空六课5 小时前
支持注意力分析的热力图工具有哪些?
前端·数据库·数据分析
Csvn7 小时前
Vue3 响应式与编译:依赖收集如何升级为节点级靶向更新
前端
星栈8 小时前
pnpm 12 升级实测
前端·javascript
Sirens.8 小时前
Java并发锁详解:六类锁策略与 synchronized 底层原理
java·前端·算法
hweiyu008 小时前
Redis命令:HPERSIST
redis·缓存
hweiyu009 小时前
Redis命令:HPEXPIRE
redis·缓存
特创数字科技9 小时前
一个纯本地运行的图片处理工具:压缩 / 裁剪 / 九宫格 / 圆角 / 滤镜 / 拼图 / 水印,终生使用
前端
IT_陈寒10 小时前
Vue的v-if和v-for混用居然是个天坑
前端·人工智能·后端