美文网首页
keep-alive缓存组件及应用案例

keep-alive缓存组件及应用案例

作者: 懒懒猫 | 来源:发表于2021-12-06 14:38 被阅读0次

    一、keep-alive组件: 缓存组件

    作用:

    可以让组件保留状态,避免重新渲染,提升页面性能

    二、举例:

    在tab切换中,切换三个组件,不用keep-alive,每个组件在重新显示时,都会再执行created,并重复发起请求
    如何在外面包裹keep-alive, 则初次创建后会缓存组件,再次显示,不会再执行created,而是直接显示缓存的内容,不会再重复发起请求

    三、使用keep-alive后,缓存组件会多两个生命周期钩子:

            activated(){
                console.log('a-当缓存组件被激活时');
            },
            deactivated(){
                console.log('a-当缓存组件失活时');
            }
    

    四、keep-alive有两个属性: include exclude

            <keep-alive include="a1">    只有a1被缓存,a1是组件的name属性的值
            <keep-alive exclude="a1">    只有a1没有被缓存
    

    五、实例:

    参考vue-app各阶段项目代码-----21-0401-keep-alive缓存组件在项目中的使用(component组件-动态路由组件)

    六、

    **** 在动态路由的出口 <router-view>上使用keep-alive的技巧

    如果不用keep-alive,会重复发起请求

    使用的步骤:

    (1) 在动态路由组件内部的created中发起ajax请求
    (2) 设置key值

                   <keep-alive>
                       <router-view :key="$route.fullPath"></router-view>
                   </keep-alive>
    

    相关文章

      网友评论

          本文标题:keep-alive缓存组件及应用案例

          本文链接:https://www.haomeiwen.com/subject/ftfxkltx.html