2024年前端最新Vue进阶(二十九):嵌套路由讲解_vue component children 示例,阿里前端三面

最后

前15.PNG

前16.PNG

由于文档内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

嵌套路由还有一个优点,就是让新的页面内容展示在父组件的占位符(即router-view标签)中,这样有利于页面结构的搭建,结构清晰。

那么,如何注册子路由呢?

Vue路由定义中需要用到一个children属性,其值为数组,数组中的每一项对应一个子路由。

二、码上谈兵

示例代码如下:

<template id="tmpl">
  <div>
    <h1>这是 Account 组件</h1>

    <router-link to="/account/login">登录</router-link>
    <router-link to="/account/register">注册</router-link>

    <router-view></router-view>
  </div>
</template>

路由配置文件如下:

routes: [
  {
    path: '/account',
    component: account,
    // 使用 children 属性,实现子路由,同时,子路由的 path 前面,不要带 / ,否则永远以根路径开始请求,这样不方便去理解URL地址
    children: [
      { path: 'login', component: login },
      { path: 'register', component: register }
    ]
  }
  // { path: '/account/login', component: login },
  // { path: '/account/register', component: register }
]

还可以优化以上处理逻辑,在home路由对应的组件加载到页面时,若需要默认加载一个子路由时,可以做一个重定向,在home路由中redirect:"重定向的子路由网址"。这个时候加载home页面时默认会加一个子路由。

代码:默认显示home2

{
    path:"/home",
    name:"home",
    component:()=>import('../views/home/index.vue'),
    redirect:"/home/home2",//当网址为/home时重定向到/home/home2
    children:[
        {
            path:"home1",
            name:"home1",
            component:()=>import('../views/home/home1/index.vue')
        },
        {
            path:"home2",
            name:"home2",
            component:()=>import('../views/home/home2/index.vue')
        },
        {
            path:"home3",
            name:"home3",
            component:()=>import('../views/home/home3/index.vue')
最后
--

**[开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】](https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0)**

> 最后写上我自己一直喜欢的一句名言:`世界上只有一种真正的英雄主义就是在认清生活真相之后仍然热爱它`
> ![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9tbWJpei5xcGljLmNuL21tYml6L3lnVUFXMUlsN2FRMlNlT2VueEF1QTMxNDlEQmRDMlU0bzBpY21pYVloa2szeXVFZmNydGV4MGYxSWljdFJGNU9RYUw5TWJHb0hiTmtWQlBQUGliTng0RWJpY0EvNjQw?x-oss-process=image/format,png)



ZmNydGV4MGYxSWljdFJGNU9RYUw5TWJHb0hiTmtWQlBQUGliTng0RWJpY0EvNjQw?x-oss-process=image/format,png)



  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值