Vue keep-alive 缓存组件

 

缓存路由组件

keep-alive标签包括,加上include或exclude属性即可

属性值必须和组件的name属性对应

App.vue

<template>
  <div id="app">
    <div class="nav">
      <router-link
        class="nav"
        :to="`/Island?id=${id}&title=${title}`"
        active-class="active-nav"
      >
        Island
      </router-link>
      <router-link class="nav" replace to="/Polaris" active-class="active-nav">
        Polaris
      </router-link>
    </div>
    <div class="con">
      <keep-alive include="Island">
        <router-view />
      </keep-alive>
    </div>
  </div>
</template>

<script>
export default {
  name: "App",
  data: () => ({ id: 123, title: "my title" }),
};
</script>


Island.vue

<template>
      <h1>
          message by Island 
      {{id}} 
      -
      {{title}}
      </h1>
</template>

<script>
export default {
  props:['id','title'],
  name:'Island',
  beforeDestroy(){
    console.log('Isalnd 即将被销毁');
  }
};
</script>

<style scoped>
h1 {
  color: salmon;
}
</style>
posted @   IslandZzzz  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
历史上的今天:
2020-02-19 JavaScript 闭包&基于闭包实现柯里化curry和bind
2020-02-19 JavaScript 种一颗二叉树
2020-02-19 JavaScript 对象数字键特性实现桶排序
2020-02-19 JQuery常用CSS操作
2019-02-19 MyBatis配置文件SqlMapCofing.xml(属性加载&类型别名配置&映射文件加载)
2019-02-19 Mybatis架构&MybatisDao的两种开发方式(原始Dao,接口动态代理)
点击右上角即可分享
微信分享提示