vue keep-alive的简单总结


Posted in Vue.js onJanuary 25, 2021

一、作用

主要用于保留组件状态或避免重新渲染。

二、用法

<keep-alive> 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。

<keep-alive> 是一个抽象组件:它自身不会渲染一个 DOM 元素,也不会出现在组件的父组件链中。

当组件在 <keep-alive> 内被切换,它的 activated 和 deactivated 这两个生命周期钩子函数将会被对应执行。

三、Props

include

include - 字符串或正则表达式。只有名称匹配的组件会被缓存。

exclude

exclude - 字符串或正则表达式。任何名称匹配的组件都不会被缓存。

include 和 exclude prop 允许组件有条件地缓存。二者都可以用逗号分隔字符串、正则表达式或一个数组来表示:

<!-- 逗号分隔字符串 -->
<keep-alive include="a,b">
 <component :is="view"></component>
</keep-alive>

<!-- 正则表达式 (使用 `v-bind`) -->
<keep-alive :include="/a|b/">
 <component :is="view"></component>
</keep-alive>

<!-- 数组 (使用 `v-bind`) -->
<keep-alive :include="['a', 'b']">
 <component :is="view"></component>
</keep-alive>

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

max

max - 数字。最多可以缓存多少组件实例。

一旦这个数字达到了,在新实例被创建之前,已缓存组件中最久没有被访问的实例会被销毁掉。

<keep-alive :max="10">
 <component :is="view"></component>
</keep-alive>

以上就是浅析vue中的keep-alive的详细内容,更多关于vue中的keep-alive的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
Vue3+elementui plus创建项目的方法
Dec 01 Vue.js
用vue设计一个日历表
Dec 03 Vue.js
vue watch监控对象的简单方法示例
Jan 07 Vue.js
antdesign-vue结合sortablejs实现两个table相互拖拽排序功能
Jan 08 Vue.js
Vue仿Bibibili首页的问题
Jan 21 Vue.js
Vue实现摇一摇功能(兼容ios13.3以上)
Jan 26 Vue.js
vue 实现click同时传入事件对象和自定义参数
Jan 29 Vue.js
详解vite+ts快速搭建vue3项目以及介绍相关特性
Feb 25 Vue.js
原生JS封装vue Tab切换效果
Apr 28 Vue.js
vue组件的路由高亮问题解决方法
May 11 Vue.js
vue点击弹窗自动触发点击事件的解决办法(模拟场景)
May 25 Vue.js
vue @click.native 绑定原生点击事件
Apr 22 Vue.js
vue form表单post请求结合Servlet实现文件上传功能
Jan 22 #Vue.js
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
Jan 22 #Vue.js
Vue仿Bibibili首页的问题
Jan 21 #Vue.js
如何在vue 中使用柱状图 并自修改配置
Jan 21 #Vue.js
Vue看了就会的8个小技巧
Jan 21 #Vue.js
浅谈Vue开发人员的7个最好的VSCode扩展
Jan 20 #Vue.js
详解实现vue的数据响应式原理
Jan 20 #Vue.js
You might like
PHP之数组学习
2011/05/29 PHP
discuz加密解密函数使用方法和中文注释
2014/01/21 PHP
PHP register_shutdown_function()函数的使用示例
2015/06/23 PHP
python进程与线程小结实例分析
2018/11/11 PHP
laravel多条件查询方法(and,or嵌套查询)
2019/10/09 PHP
关于javascript document.createDocumentFragment()
2009/04/04 Javascript
firebug的一个有趣现象介绍
2011/11/30 Javascript
游览器中javascript的执行过程(图文)
2012/05/20 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
2015/12/13 Javascript
jQuery表单对象属性过滤选择器实例详解
2016/09/13 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
jQuery页面弹出框实现文件上传
2017/02/09 Javascript
JavaScript函数柯里化原理与用法分析
2017/03/31 Javascript
JQuery实现table中tr上移下移的示例(超简单)
2018/01/08 jQuery
iview在vue-cli3如何按需加载的方法
2018/10/31 Javascript
教你使用vue-cli快速构建的小说阅读器
2019/05/13 Javascript
JS中实现一个下载进度条及播放进度条的代码
2019/06/10 Javascript
webpack proxy 使用(代理的使用)
2020/01/10 Javascript
keep-alive不能缓存多层级路由菜单问题解决
2020/03/10 Javascript
python实现从web抓取文档的方法
2014/09/26 Python
Python实现字典按照value进行排序的方法分析
2017/12/23 Python
Python发送邮件的实例代码讲解
2019/10/16 Python
django 文件上传功能的相关实例代码(简单易懂)
2020/01/22 Python
python实现超级玛丽游戏
2020/03/18 Python
英国可持续奢侈品包包品牌:Elvis & Kresse
2018/08/05 全球购物
Hunkemöller瑞士网上商店:欧洲最大的内衣品牌之一
2018/12/03 全球购物
中专毕业生自我鉴定
2013/11/21 职场文书
大学校园活动策划书
2014/02/04 职场文书
小学英语教师先进事迹
2014/05/28 职场文书
纪念9.18事变演讲稿
2014/09/14 职场文书
给老婆的检讨书
2015/01/27 职场文书
小学运动会开幕词
2016/03/04 职场文书
react antd实现动态增减表单
2021/06/03 Javascript
MySQL创建表操作命令分享
2022/03/25 MySQL
Axios代理配置及封装响应拦截处理方式
2022/04/07 Vue.js
Java结构型设计模式之组合模式详解
2022/09/23 Java/Android