美文网首页
Vue动态组件配合keep-alive实现状态缓存

Vue动态组件配合keep-alive实现状态缓存

作者: 李牧敲代码 | 来源:发表于2019-03-07 22:29 被阅读0次

当在这些组件之间切换的时候,你有时会想保持这些组件的状态,以避免反复重渲染导致的性能问题。看下面这张图


ezgif-4-d5fd12951ae2.gif

要实现上面这种效果就需要用keep-alive这个标签了,下面是代码:

<template>
    <div class="home">
        <keep-alive>
            <componentA v-if="isShow"></componentA>
            <componentB v-if="!isShow"></componentB>
        </keep-alive>
        <button @click="changeShow">change</button>
    </div>
</template>

<script>
// @ is an alias to /src
import componentA from "../components/componentA";
import componentB from "../components/componentB";
export default {
    name: "home",
    components: {
        componentA,
        componentB
    },
    data() {
        return {
            isShow: true
        };
    },
    methods: {
        changeShow() {
            this.isShow = !this.isShow;
        }
    }
};
</script>

相关文章

  • vue中动态路由组件缓存及生命周期函数

    vue动态路由组件缓存 是Vue的内置组件,能在组件切换过程中将状态保留在内存中,防止重复...

  • 重学Vue--keep-alive的使用

    keep-alive是什么? keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件...

  • Vue动态组件配合keep-alive实现状态缓存

    当在这些组件之间切换的时候,你有时会想保持这些组件的状态,以避免反复重渲染导致的性能问题。看下面这张图 要实现上面...

  • vue-api-内置组件

    component 动态组件 keep-alive 缓存组件 slot 插槽

  • 随笔

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

  • Vue中keep-alive的使用

    概念    keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它...

  • vue性能优化

    在vue中,在做路由跳转时,我们通常希望去缓存那些活跃的动态组件,我们就会想到用keep-alive去缓存组件。但...

  • vue中keep-alive

    官方定义 keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们...

  • VUE 动态组件&异步组件

    在动态组件中使用 keep-alive 在动态组件中使用keep-alive可一缓存组件 在组件切换的时候不会重新...

  • vue keep-alive以及activated,deacti

    vue官网的描述: 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和 相似...

网友评论

      本文标题:Vue动态组件配合keep-alive实现状态缓存

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