浏览器缓存机制详解

本文详细解析了Vue中的keep-alive组件,它用于缓存组件以提高性能。介绍了keep-alive的作用,如在前进刷新、后退缓存用户数据的场景下使用,以及如何缓存动态组件和路由组件。还探讨了activated和deactivated生命周期钩子,以及keep-alive的源码解析和LUR缓存策略。
摘要由CSDN通过智能技术生成

理解keep-alive

keep-alive是Vue提供的一个抽象组件,用来对组件进行缓存,从而节省性能,由于是一个抽象组件,所以在页面渲染完毕后不会被渲染成一个DOM元素

keep-alive的作用

  • vue项目中难免会有列表页面或搜索结果列表页面,点击某个结果之后,返回回来这个页面时还是之前的搜索结果的列表* 在router-view上使用可以缓存该路由组件* 有两个参数 Props:include 字符串或正则表达式,只有匹配组件会被缓存exclude 字符串或正则表达式,任何匹配的组件都不会被缓存使用场景
    ====

  • Vue中前进刷新,后退缓存用户浏览数据\

  • 列表页面 =>点击进入详情页=> 后退到列表页 要缓存列表原来数据

  • 重新进入列表页面 => 获取最新的数据

使用方法

缓存动态组件

包裹动态组件时,会缓存不活动的组件实例,而不是销毁

<keep-alive><component :is='view'></component>
</keep-alive> 
缓存路由组件

使用keep-alive 可以将所有路径匹配到的路由组件都缓存起来,包括组件里面的组件

<keep-alive><router-view></router-view>
</keep-alive> 

生命周期函数

activated

  • 组件激活时使用
  • 在服务端渲染期间不被调用

deactivated

  • keep-alive组件中停用时调用
  • 在服务端渲染期间不被调用
  • 被包含在
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值