vue默认组件不缓存的,切换组件的时候会重新触发组件的生命周期,在组件较为复杂的时候,或者不希望每次重新渲染的时候需要将组件缓存下来,组件缓存需要用到keep-alive标签
  • 是Vue的内置组件,能在组件切换过程中将状态保留在内存中,防止重复渲染DOM
  • 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们
  • 是一个抽象组件:它自身不会渲染一个 DOM 元素,也不会出现在父组件链中。
属性
  • include: 字符串、数组匹配。只有匹配的组件会被缓存。
  • :incude:正则匹配, 正则要用斜线包裹
  • include和:include同时存在时,后面的属性生效,前面的属性会失去作用
  • exclude: 字符串或正则表达式。任何匹配的组件都不会被缓存。
  • 里面的值是匹配组件的name属性中的值
<keep-alive :include="/comp*/">
    <router-view></router-view>
 </keep-alive>
Logo

前往低代码交流专区

更多推荐