keep-alive用法及(activated,deactivated生命周期)

<template>
    <div id="app">
        <!-- <img src="./assets/logo.png"> -->
     	<ul>
            <li><router-link to='/'>helloworld</router-link><li>
            <li><router-link to='/echart'>echart</router-link><li>
            <li><router-link to='/map'>map</router-link></li>
        </ul>
        
        <!-- <router-view></router-view> -->
 
        <!-- 方法一:缓存所有的 -->
        <keep-alive>
            <router-view/>
        </keep-alive>
 
        <!-- 方法二 -->
        <!-- 缓存模块名为List的模块,不会重复请求,其它模块重复请求 -->
        <!-- <keep-alive include="List">
            <router-view/>
        </keep-alive> -->
        <!-- 不缓存模块名为List的模块,会重复请求,其它模块缓存 -->
        <!-- <keep-alive exclude="List">
            <router-view/>
        </keep-alive> -->
 
        <!-- 方法三 -->
        <!--  <keep-alive>
            <router-view v-if="$route.meta.keepAlive"></router-view>
        </keep-alive>
        <router-view v-if="!$route.meta.keepAlive"></router-view> -->
  	</div>
</template>
 
<script>
    export default {
        name: 'App'
    }
</script>
<style scoped>

</style>
 


// activated,deactivated这两个生命周期函数一定是要在使用了keep-alive组件后才会有的,否则则不存在

activated(){ console.log('activated页面打开时触发'); }, deactivated(){ console.log('deactivated页面关闭时触发'); }

  

  1. <template>
  2.  
    <div id="app">
  3.  
    <!-- <img src="./assets/logo.png"> -->
  4.  
    <ul>
  5.  
    <li><router-link to='/'>helloworld</router-link><li>
  6.  
    <li><router-link to='/echart'>echart</router-link><li>
  7.  
    <li><router-link to='/map'>map</router-link></li>
  8.  
    </ul>
  9.  
     
  10.  
    <!-- <router-view></router-view> -->
  11.  
     
  12.  
    <!-- 方法一:缓存所有的 -->
  13.  
    <keep-alive>
  14.  
    <router-view/>
  15.  
    </keep-alive>
  16.  
     
  17.  
    <!-- 方法二 -->
  18.  
    <!-- 缓存模块名为List的模块,不会重复请求,其它模块重复请求 -->
  19.  
    <!-- <keep-alive include="List">
  20.  
    <router-view/>
  21.  
    </keep-alive> -->
  22.  
    <!-- 不缓存模块名为List的模块,会重复请求,其它模块缓存 -->
  23.  
    <!-- <keep-alive exclude="List">
  24.  
    <router-view/>
  25.  
    </keep-alive> -->
  26.  
     
  27.  
    <!-- 方法三 -->
  28.  
    <!-- <keep-alive>
  29.  
    <router-view v-if="$route.meta.keepAlive"></router-view>
  30.  
    </keep-alive>
  31.  
    <router-view v-if="!$route.meta.keepAlive"></router-view> -->
  32.  
    </div>
  33.  
    </template>
  34.  
     
  35.  
    <script>
  36.  
    export default {
  37.  
    name: 'App'
  38.  
    }
  39.  
    </script>
  40.  
    <style scoped>
  41.  
    ul{
  42.  
    height: 50px;
  43.  
    }
  44.  
    li{
  45.  
    float: left;
  46.  
    margin-left:15px;
  47.  
    list-style: none;
  48.  
    }
  49.  
    </style>
  50.  
     

猜你喜欢

转载自www.cnblogs.com/mengzhongfeixue/p/11839088.html