路由多级嵌套信息丢失
当二级路由的信息是由一级路由使用query参数传递过来,同时三级路由的信息由二级路由传递过来,那么在点击二级路由切换三级路由时,会出现二级路由信息丢失,因为query的值在点击二级路由时被覆盖
const route = useRoute()
const { query } = toRefs(route)
</script>
<template>
<div class="menuSecond">
<div class="menuSecond-aside">
<ul>
<li v-for="index in query.secondMenu" :key="index">
<RouterLink :to="{
name: 'detail',
query: {
detail: 123
}
}">{{ index }}</RouterLink>
</li>
</ul>
</div>
在点击切换路由的时候,query的值由原本包含二级路由信息的值,变为仅包含detail:123,
解决这个问题就是要在传递三级路由信息时,保存二级路由的信息
query: {
...query,
detail: 123
}
即可