使用场景:
切换首页到其他页面,重新回到首页时,首页初始化了,在vue中页面的切换由router对象管理的,来回切换,会触发create,destroy生命周期函数,为了保持路由的状态,来回切换不会重新初始化页面,可以使用keep-alive标签进行包裹
使用keep-alive的注意事项
注意:当使用keep-alive标签进行包裹时,页面的create,destroy生命周期函数就失效,可以使用activated(),deactivated()代替,激活和不被激活
特别的:有些东西你不希望它缓存,可以在标签中使用exclude属性
使用 include/exclude 来实现部分组件不需要缓存,每个组件中需要加 name 来匹配
• include:只有匹配的组件会被缓存(支持字符串或正则表达)
• exclude:任何匹配的组件都不会被缓存(支持字符串或正则表达)
// 只缓存 name 为 index 的组件
<keep-alive include="index">
<router-view/>
</keep-alive>
// 不缓存 name 为 index 的组件
<keep-alive exclude="index">
<router-view/>
</keep-alive>
// 只缓存 name 为 index 或 hello 的组件
<keep-alive include="index,hello">
<router-view/>
</keep-alive>
来源:CSDN
作者:web猿
链接:https://blog.csdn.net/fesfsefgs/article/details/104116457