<keep-alive>
<router-view v-if="$route.meta.keepAlive"></router-view>
</keep-alive>
<router-view v-if="!$route.meta.keepAlive"></router-view>
代码如上
出现的问题:当路由设置keepAlive :true时页面正常显示,但是为false的时候却不渲染,什么都没有 也不报错
查看官网api 发现下面这句话(注意,<keep-alive>
是用在其一个直属的子组件被开关的情形。如果你在其中有 v-for
则不会工作。如果有上述的多个条件性的子元素,<keep-alive>
要求同时只有一个子元素被渲染。)