vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

当我们切换页面时页面会被销毁,重新切换回来时会被创建

如图

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

 

 

 当我们切换时

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

 

 

 在原来Vue2上面缓存组件原来是这样写的在app.vue里

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

 

 

 这样写在Vue3里是不会生效的,可以查看页面

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

 

 

 我们必须使用新的插槽方式来使用缓存 页面功能

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

<router-view v-slot="{ Component }">
  <transition>
    <keep-alive>
      <component :is="Component"></component>
    </keep-alive>
  </transition>
</router-view>

然后在各个导航页面里写入

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

 

 

 打印就会发现第一次只会打印”组件被创建“没有销毁

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

 

 

 如果我不想全部被缓存,要About页面单独不被缓存

App.vue页面上加入exclude写上你要取消缓存的页面名字,

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

 

 

 注意这个名字不是index路由里的名字

是你这里的名字

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

 

 

 如果要多个页面不缓存可在exclude=”名字,名字“

 使用逗号

 

 

这里我如果想要一个效果,我点击一个页面的某个路径了,我切换了页面之后点回来希望还是那个路径

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

就可以在页面守卫里使用,判断他是否离开了当前页面,如果是就把这路径给data详情见截图

vue3切换页面时阻止页面的销毁和重新创建(缓存页面)

上一篇:Git 的两种忽略文件方式 gitignore 和 exclude


下一篇:二十八、rsync同步工具深入