路由配置:
{
path: '/submit',
component: resolve => {
require(['./pages/sb.vue'], resolve);
},
meta: {keepAlive: true}
},
app.vue配置
<!-- 这里是需要keepalive的 -->
<keep-alive>
<router-view v-if="$route.meta.keepAlive"></router-view>
</keep-alive>
<!-- 这里不会被keepalive -->
<router-view v-if="!$route.meta.keepAlive"></router-view>
(因为我的代码比较长,复制了下别人的,基本情况是一样的)
现在有这样一个情形:
list_1和list_2是由同一个vue页面渲染出来的两个路由页面;detail_1是list_1的详情页;
需要判断或者选择缓存的是list_1和list_2页面,详情页不进行缓存;
list_1--detail_1;
list_2--detail_2;
情形1:从list_1跳转到detail_1,缓存list_1页面;浏览器返回list_1,调用缓存;正常。
情形2:从list_1跳转到detail_1,缓存list_1页面;点击list_2,缓存list_2页面;再点击detail_2,浏览器返回list_2;此时页面显示的是list_1的数据,不正常。
情形2怎么处理?缓存了两个页面,无法选择或销毁想要的缓存页面。
凤凰求蛊
跃然一笑
相关分类