【Vue3】学习命名路由和嵌套路由

💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢迎在文章下方留下你的评论和反馈。我期待着与你分享知识、互相学习和建立一个积极的社区。谢谢你的光临,让我们一起踏上这个知识之旅!
请添加图片描述

🍀命名路由

上一节我们介绍了to的两种写法,分别是字符串写法和对象写法,这里我们使用对象写法来实现命名路由

我们先简单修改一下

{
      path:'/home',
      component:Home
    },
    {
      name:"wan",
      path:'/plays',
      component:Play
    },
    {
      path:'/about',
      component:About
    },
  ]

之后我们在模版那里改成对象形式,与之前不一样的是,这回使用的是name而不是pathl

<RouterLink :to="{name:'wan'}" active-class="MT">娱乐</RouterLink>

🍀嵌套路由

在Vue Router中,嵌套路由是一种将多个组件嵌套在一个父路由下的技术。这种方式使得我们可以更好地组织和管理页面结构,使得应用程序更具层次性和可维护性。下面详细介绍一下嵌套路由的用法和特点

嵌套路由顾名思义就是在一个路由里面又加了一个路由

我们首先在plays.vue中添加我们的数据代码

<template>
  <div class="plays">
    <ul>
      <li><a href="#">王者荣耀</a></li>
      <li><a href="#">原神</a></li>
      <li><a href="#">和平精英</a></li>
      <li><a href="#">LOL</a></li>
    </ul>
  </div>
</template>

<script setup lang="ts" name="plays">
  import {reactive} from 'vue'
  const newList = reactive([
    {id:'001',title:'英雄',content:'李白'},
    {id:'002',title:'英雄',content:'胡桃'},
    {id:'003',title:'英雄',content:'***'},
    {id:'004',title:'英雄',content:'亚索'}
  ])
</script>

之后我们改一下模版的内容

<template>
  <div class="plays">
    <ul>
      <li v-for="play in newList" :key="play.id">
      <a href="#">{{ play.content }}</a></li>
    </ul>
  </div>
</template>

最终页面的呈现如下
在这里插入图片描述
上面显示的是content,如果我们现在将其改为title,那么出现了列表就是四个英雄了,我们现在想点击一个英雄,出现对应的角色

接下来我们创建一个detail.vue为了显示详细的角色内容
注意:别忘了在index.ts引入,写法如下,子级不用在path写/

routes:[ //一个一个的路由规则
    {
      path:'/home',
      component:Home
    },
    {
      name:"wan",
      path:'/plays',
      component:Play,
      children:[
        {
          path:'detail',
          component:Detail
        }
      ]
    },
    {
      path:'/about',
      component:About
    },
  ]

接下来就按照之前的操作,导入RouterView和RouterLink,并且to一下

<template>
  <div class="plays">
    <!--导航区-->
    <ul>
      <li v-for="play in newList" :key="play.id">
        <RouterLink to="/plays/detail">{{play.title}}</RouterLink>
    </li>
    </ul>
    <!--展示区-->
    <div class="news-content">
      <RouterView></RouterView>
    </div>
  </div>
</template>

这样我们点击后就可以出现了
在这里插入图片描述


🍀总结

下一节我们接着本节的内容,介绍有关传参的内容

请添加图片描述

挑战与创造都是很痛苦的,但是很充实。

相关推荐

  1. [Vue3] 嵌套

    2024-03-14 13:34:01       19 阅读
  2. Vue 3嵌套

    2024-03-14 13:34:01       14 阅读
  3. vue-router学习4:嵌套

    2024-03-14 13:34:01       12 阅读
  4. vue3

    2024-03-14 13:34:01       46 阅读
  5. Vue学习笔记11--2(传参/命名

    2024-03-14 13:34:01       29 阅读
  6. vue3学习——进度条

    2024-03-14 13:34:01       28 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-14 13:34:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-14 13:34:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-14 13:34:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-14 13:34:01       20 阅读

热门阅读

  1. sql中如何添加数据

    2024-03-14 13:34:01       18 阅读
  2. Redis-发布与订阅

    2024-03-14 13:34:01       20 阅读
  3. linux Shell 命令行-07-func 函数

    2024-03-14 13:34:01       24 阅读
  4. 汉诺塔-python递归

    2024-03-14 13:34:01       22 阅读
  5. C while 和 do while 区别

    2024-03-14 13:34:01       21 阅读
  6. [蓝桥杯 2021 省 AB2] 完全平方数

    2024-03-14 13:34:01       17 阅读
  7. 富格林:掀开黑幕背后保障安全

    2024-03-14 13:34:01       20 阅读
  8. PAT 2024年春季(甲级)

    2024-03-14 13:34:01       21 阅读
  9. 区块链技术的应用场景和优势

    2024-03-14 13:34:01       18 阅读
  10. Qt+FFmpeg+opengl从零制作视频播放器-10.解码类实现

    2024-03-14 13:34:01       19 阅读