报错信息:
经过查找发现:
官方实列代码:
<router-view v-slot="{ Component }">
<keep-alive>
<component :is="Component" v-if="$route.meta.keepAlive"/>
</keep-alive>
<component :is="Component" v-if="!$route.meta.keepAlive"/>
</router-view>
这样写,就可能会出现报错。
解决方法:
在路由节点内配置name属性,且保证为唯一标识,或其它唯一标识也行(:key="$route.name")
<router-view v-slot="{ Component }">
<keep-alive>
<component :is="Component" :key="$route.name" v-if="$route.meta.keepAlive"/>
</keep-alive>
<component :is="Component" :key="$route.name" v-if="!$route.meta.keepAlive"/></router-view>
加上:key="$route.name"这句代码就能解决此报错。