最近在开发过程中有一些对网页使用体验的需求。比如列表页有三个可以切换的tab:A,B,C,每个tab对应不同列表以及相应的增删改查,此时会发现,在tab-B或tab-C中进入新增或编辑页面,点击返回,回到的页面是tab-A,而不是之前浏览的页面,这很影响使用体验。此时就可以使用到keep-alive来对组件进行缓存。
从官方文档来理解,就是用于保留组件状态或避免重新渲染。
使用方式:
1.可以使用基础的使用方式,在router.js文件中给要缓存的路由组建添加meta: {keep-alive: true}的属性,在组件外直接包裹keep-alive,这种情况需要保证同级的多个组件同时只有一个组件能渲染
2.可以用include和exclude配合字符串或正则来有条件的缓存,这块还没有详细探究,以后再来补充
最重要的是,在activated等钩子中的使用,后面再整理。