⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

Vue keep-alive 缓存组件

使用 keep-alive 保留组件状态,避免重复渲染,提升动态切换性能。 · 难度:入门 · +15XP

keep-alive 的作用

<keep-alive> 是一个内置组件,用于缓存动态组件或路由组件的实例。当组件被切换时,它不会销毁,而是被缓存起来,再次显示时直接复用,保留所有状态。

基本用法

<keep-alive>
  <component :is="currentTab" />
</keep-alive>

生命周期钩子

被 keep-alive 包裹的组件会额外触发 activateddeactivated 钩子。

钩子触发时机
activated组件被激活(重新插入 DOM)
deactivated组件被停用(缓存)

包含与排除

<keep-alive include="ComponentA,ComponentB" exclude="ComponentC" max="5">
  <component :is="currentView" />
</keep-alive>

includeexclude 接受组件名称或正则,max 限制最大缓存实例数。

练习提示

1. 创建两个计数器组件,分别有独立的 count 状态。
2. 用动态组件切换,观察带 keep-alive 和不带时的状态差异。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 125 篇
0 完成
🔥 0