Vue3-30-路由-嵌套路由的基本使用

什么是嵌套路由

嵌套路由 :就是一个组件内部还希望展示其他的组件,使用嵌套的方式实现页面组件的渲染。
就像 根组件 通过路由渲染 普通组件一样,嵌套路由也是一样的道理。

嵌套路由的相关关键配置

1、<router-view> 标签 声明 被嵌套组件 的渲染位置;
2、路由配置表中使用 children:[] 来声明 嵌套的子路由;
3、子路由 的path属性 中不可以带 /,否则无法匹配!
4、嵌套路由可以无限嵌套。

嵌套路由的语法格式

  {path:'/a', // 父级路由path 要有 / name:'aroute',component:componentA,children:[{path:'b', // 子路由的path中 不可以有 /name:'broute',component:componentB,},... 还可以添加其他的子路由对象]}

写一个案例来看看

案例的项目结构

projectName| -- src| -- App.vue| - componentA.vue| - componentB.vue| - componentC.vue| -- router.ts # 路由的配置文件| -- index.html

路由配置 router.ts

// 导入 定义路由的两个方法
import {createRouter,createWebHistory}  from 'vue-router'// 引入两个组件
import componentA from "./componentA.vue";
import componentB from "./componentB.vue";
import componentC from "./componentC.vue";// 声明路由跳转的路径与组件的对应关系
const routsList = [{path:'/a',name:'aroute',component:componentA,children:[{path:'b',name:'broute',component:componentB,children:[{path:'c',name:'croute',component:componentC},]},]},
]// 创建路由的实例对象
const routerConfigObj = createRouter({history:createWebHistory('abc'), // 带一个参数,表示是路由的一个前缀routes:routsList // 指定路由的配置列表
})// 导出路由的对象
export default routerConfigObj;

App.vue 中的跳转逻辑代码

有一个按钮,点击跳转到一个嵌套的路由中去

<template><div class="basediv">APP.vue 中的 msg : {{ msg }}<br>   <button @click="pushToB">路由到组件B</button><!-- <br> --><br><br><br><br><!-- router-view 进行目标组件的展示 --><router-view></router-view></div></template><script setup lang="ts">// 引入 provide 方法import { ref } from 'vue'// 引入路由配置实例 与 当前路由对象import { useRouter } from 'vue-router';// 声明父组件的一个变量const msg = ref('这是App根组件的msg变量')// 接收一下路由实例对象 和 当前路由 对象const routerObj = useRouter();// 路由跳转到 B组件的处理方法const pushToB = ()=>{routerObj.replace({path:'/a/b',query:{p3:'vue3',p4:'路由的跳转'}})}    </script><style scoped>.basediv{width: 600px;height: 400px;border: 1px solid red;}
</style>

componentA.vue

componentB.vue 和componentA.vue的代码一致;
componentC.vue 中 没有 <router-view>标签

<template><div class="diva">这是组件A<br><!-- 子组件的展示位置 --><router-view></router-view></div></template><script setup lang="ts">// 引入两个路由相关的方法import { useRouter,useRoute} from 'vue-router';// 声明 路由实例对象 和 当前路由对象const routerObj = useRouter()const currentRoute = useRoute()// 打印一下路由实例对象 和 当前路由对象console.log('A 组件 中 路由实例对象 :',routerObj)console.log('A 组件 中 当前路由对象 :',currentRoute)</script><style scoped>.diva{width: 300px;height: 200px;background: red;}
</style>

运行效果

1、初始状态

在这里插入图片描述

2、浏览器地址栏中直接输入地址进行路由

在这里插入图片描述

3、点击按钮进行路由

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/229645.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第28关 k8s监控实战之Prometheus(一)

------> 课程视频同步分享在今日头条和B站 大家好&#xff0c;我是博哥爱运维。对于运维开发人员来说&#xff0c;不管是哪个平台服务&#xff0c;监控都是非常关键重要的。 在传统服务里面&#xff0c;我们通常会到zabbix、open-falcon、netdata来做服务的监控&#xff0…

vmware安装龙蜥操作系统

vmware安装龙蜥操作系统 1、下载龙蜥操作系统 8.8 镜像文件2、安装龙蜥操作系统 8.83、配置龙蜥操作系统 8.83.1、配置静态IP地址 和 dns3.2、查看磁盘分区3.3、查看系统版本 1、下载龙蜥操作系统 8.8 镜像文件 这里选择 2023年2月发布的 8.8 版本 官方下载链接 https://mirro…

Windows搭建FTP服务器教学以及计算机端口介绍

目录 一. FTP服务器介绍 FTP服务器是什么意思&#xff1f; 二.Windows Service 2012 搭建FTP服务器 1.开启防火墙 2.创建组 ​编辑3.创建用户 4.用户绑定组 5.安装ftp服务器 ​编辑6.配置ftp服务器 7.配置ftp文件夹的权限 8.连接测试 三.计算机端口介绍 什么是网络…

word 常用功能记录

word手册 多行文字对齐标题调整文字间距打钩方框插入三线表插入参考文献自动生成目录 多行文字对齐 标题调整文字间距 打钩方框 插入三线表 插入一个最基本的表格把整个表格设置为无框线设置上框线【实线1.5磅】设置下框线【实线1.5磅】选中第一行&#xff0c;设置下框线【实线…

Plantuml之JSON数据语法介绍(二十五)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

uniapp中uview组件库的DatetimePicker 选择器的用法

目录 基本使用 #年 月 日 #格式化 #限制最大最小值 API #Props #Events #Methods 基本使用 通过show绑定一个布尔值变量&#xff0c;用于控制组件的弹出与收起。通过mode配置选择何种日期格式。 <template><view><u-datetime-picker:show"show&qu…

数据库之索引

1. 索引的定义 索引是一个排序的列表&#xff0c;包含索引字段的值和其对应的行记录的数据所在的物理地址。 索引的作用&#xff1a; 加快表的查询速度&#xff0c;还可以对字段排序。 2. 索引的工作方式 有了索引后&#xff0c;要根据条件查询某行数据时&#xff0c;需要先…

uniapp中的uview组件库丰富的Form 表单用法

目录 基本使用 #Form-item组件说明 #验证规则 #验证规则属性 #uView自带验证规则 #综合实战 #校验错误提示方式 #校验 基本使用 此组件一般是用于表单验证使用&#xff0c;每一个表单域由一个u-form-item组成&#xff0c;表单域中可以放置u-input、u-checkbox、u-radio…

云原生十二问

一、什么是云原生&#xff1f; 云原生是在云计算环境中构建、部署和管理现代应用程序的软件方法。现代企业希望构建高度可扩展、灵活且具有弹性的应用程序&#xff0c;可以快速更新以满足客户需求。为此&#xff0c;他们使用现代工具和技术&#xff0c;这些工具和技术本质上支…

RabbitMQ基础知识

一.什么是RabbitMQ RabbitMQ是一个开源的、高性能的消息队列系统&#xff0c;用于在应用程序之间实现异步通信。它实现了AMQP&#xff08;Advanced Message Queuing Protocol&#xff09;协议&#xff0c;可以在分布式系统中传递和存储消息。 消息队列是一种将消息发送者和接收…

NE555学习笔记-2024

实物图片 NE555引脚图 内部时序图 示列1&#xff0c;红外接收电路 红外接收电路的工作原理&#xff1a;在上述电路中&#xff0c;TSOP1738构成了该电路的主要组成部分&#xff0c;旨在检测来自任何来源的红外信号。这用于检测38 KHz范围的信号&#xff0c;因此命名为“TSOP173…

aps审核-模电英文稿

模拟电子线路 Analog circuit 需要熟悉课程名&#xff0c;一句话简单概括课程内容&#xff0c;准备一些重点内容介绍。 This course mainly introduces the properties(n.性质) of semiconductors(半导体) and transistors, and then analyzes and masters amplification circ…

利用Spring Cloud和Java系统设置优化工程项目管理系统源码的二次开发体验

工程项目管理涉及众多环节和角色&#xff0c;如何实现高效协同和信息共享是关键。本文将介绍一个采用先进技术框架的Java版工程项目管理系统&#xff0c;该系统支持前后端分离&#xff0c;功能全面&#xff0c;可满足不同角色的需求。从项目进度图表到施工地图&#xff0c;再到…

Element-ui自定义input框非空校验

1、vue自定义非空指令&#xff1a; main.js中自定义非空指令 当input框或下拉框中数据更新时&#xff0c;触发校验 Vue.directive(isEmpty,{update:function(el,binding,vnode){if(vnode.componentInstance.value""){el.classList.add("is-required");}e…

C#中汉字转区位码

目录 一、关于区位码 1.区位码定义 2.算法 二、实例 三、生成效果 四、程序中的知识点 1.byte[] GetBytes(string s) 2.字节数组转short类型 一、关于区位码 1.区位码定义 区位码是一个4位的十进制数&#xff0c;每个区位码都对应着一个唯一的汉字&#xff0c;区位码…

大文件断点下载Range下载zip包显示文件损坏

问题&#xff1a;大文件下载&#xff0c;其它格式的文件及rar格式的压缩包正常下载但是 之后zip包下载后解压失败 原因分析: 1. 查看上传文件的属性值 如图&#xff0c;10.4kb是已经约去小数点的值&#xff0c;准确的大小应该是10663字节10.4130859375KB&#xff0c;所以用10.…

基于ssm的剧本杀预约系统+vue论文

摘 要 如今社会上各行各业&#xff0c;都在用属于自己专用的软件来进行工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发现离不开了互联网。互联网的发展&#xff0c;离不开一些新的技术&#xff0c;而新技术的产生往往是为了解决现有问题而产生的。针对于剧本杀预…

git使用(完整流程)

1. 新建仓库 1.右击 git bash 后 输入 git init (仓库为:当前目录) git init name (仓库为:name文件夹) git clone https://github.com/Winnie996/calculate.git //https2.工作区域 工作目录 3. 添加 提交 git add . //工作区添加至暂存区 git commit -m "注释内容&q…

小球自由下落-第11届蓝桥杯选拔赛Python真题精选

[导读]&#xff1a;超平老师的Scratch蓝桥杯真题解读系列在推出之后&#xff0c;受到了广大老师和家长的好评&#xff0c;非常感谢各位的认可和厚爱。作为回馈&#xff0c;超平老师计划推出《Python蓝桥杯真题解析100讲》&#xff0c;这是解读系列的第23讲。 小球自由下落&…

基于矩阵乘的CUDA编程优化过程

背景&#xff1a;网上很多关于矩阵乘的编程优化思路&#xff0c;本着看理论分析万遍&#xff0c;不如实际代码写一遍的想法&#xff0c;大概过一下优化思路。 矩阵乘的定义如下&#xff0c;约定矩阵的形状及存储方式为: A[M, K], B[K, N], C[M, N]。 CPU篇 朴素实现方法 按照…