vue中keep-alive的使用

大城市里の小女人 提交于 2020-01-30 19:09:47
使用场景:

切换首页到其他页面,重新回到首页时,首页初始化了,在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>
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!