1.更改App.vue
<keep-alive>
<router-view v-if="$route.meta.keepAlive"></router-view>
</keep-alive>
<router-view v-if="!$route.meta.keepAlive"></router-view>
2.在路由设置keepAlive==true进行缓存的页面,返之为false
{
path: '/',
name: 'index',
component: () =>
import( /* webpackChunkName: "index" */ '@/views/index'),
meta: {
title: '首页',
keepAlive: true
}
},
3.keep-alive会对页面的滚动位置也进行缓存
router.beforeEach((to, from, next) => {
window.scrollTo(0, 0);
})