keep-alive是vue内置的一个组件,可以使被它包含的组件处于保留状态,或避免被重新渲染。

用法:

运行结果描述:

input输入框内,路由切换输入框内部的内容不会发生改变。

常见的用法:(下图是在https://www.cnblogs.com/sysuhanyf/p/7454530.html截的图,本篇文章为了自己方便查看。)

在keep-alive标签内部添加

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

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

结合router缓存部分页面:

比较实用的例子:

思路:通过beforeRouterLeave这个钩子来对路由里面的keepAlive进行赋值。从而动态的确定A页面是否需要被缓存。

注意:使用keepAlive之后,vue8个基础的生命周期都将失效,取而代之的时activatedeactivated

 activate:是在被包裹组建被激活的状态下使用的生命周期钩子

 deactivated:在被包裹组件停止使用时调用

使用场景:A->B页面,B返回A时,需要更新部分数据时,可以在activate里调用

Logo

「智能机器人开发者大赛」官方平台,致力于为开发者和参赛选手提供赛事技术指导、行业标准解读及团队实战案例解析;聚焦智能机器人开发全栈技术闭环,助力开发者攻克技术瓶颈,促进软硬件集成、场景应用及商业化落地的深度研讨。 加入智能机器人开发者社区iRobot Developer,与全球极客并肩突破技术边界,定义机器人开发的未来范式!

更多推荐