看了官方文档,发现keep-alive只能缓存组件,然后不知道咋缓存页面了,直到看了这代码,原来页面对于router-view来说,就是组件,因此可以使用keep-alive来进行页面缓存。
<router-view v-slot="{ Component }">
<keep-alive include="home">
<component :is="Component"></component>
</keep-alive>
</router-view>
如果不加include或者exclude,那就是缓存所有页面,一般不能这样做,所有页面都缓存,会占大量的内存,keep-alive具体用法,就看上面的官方文档,include
或者exclude
里面的值是页面的名字,如果页面使用的是<script setup>
,这个页面名字就是文件名