vue嵌套路由(父子路由)

配置父子路由关系,A.vue和B.vue是Main.vue的子组件:

{
      path: '/main/',
      name: 'main',
      component: () => import('components/Main.vue'),
      children: [
        {
          path: 'a',
          name: 'a',
          component: () => import('components/A.vue')
        },
        {
          path: 'b',
          name: 'b',
          component: () => import('components/B.vue')
        }
      ]
    }

编写两个简单的子组件:

  • 一个是A.vue
<template>
  <h1>This is A</h1>
</template>

<script>
  export default {
    name: "A"
  }
</script>

<style>
</style>
  • 一个是B.vue
<template>
  <h1>This is B</h1>
</template>

<script>
  export default {
    name: "B"
  }
</script>

<style>
</style>
  • 然后编写父组件Main.vue
<template>
  <div style="margin-left: 300px;">
    <router-link :to="{name:'a'}"><span style="font-size: 50px;">A</span></router-link>
    <router-link :to="{name:'b'}"><span style="font-size: 50px;">B</span></router-link>
    <router-view></router-view>
  </div>
</template>

<script>
</script>

<style>
</style>

路由导航<router-link :to="{name:'a'}"><router-link :to="{name:'b'}">导向到子路由。
<router-view></router-view>用来显示子路由对应的内容,即子路由对应页面的显示区域。

修改路由配置,添加redirect: {name: "a"},使输入/main/时自动重定向到/main/a

{
      path: '/main/',
      name: 'main',
      component: () => import('components/Main.vue'),
      redirect: {name: "a"},
      children: [
        {
          path: 'a',
          name: 'a',
          component: () => import('components/A.vue')
        },
        {
          path: 'b',
          name: 'b',
          component: () => import('components/B.vue')
        }
      ]
    }
posted @   Charramma  阅读(4838)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示