【Vue3】嵌套路由
【Vue3】嵌套路由
- 背景
- 简介
- 开发环境
- 开发步骤及源码
背景
随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日子。本文内容并非完全原创,大多是参考其他文章资料整理所得,感谢每位技术人的开源精神。
简介
本文介绍 Vue3 中嵌套路由的基本写法。
开发环境
| 分类 | 名称 | 版本 | 
|---|---|---|
| 操作系统 | Windows | Windows 11 | 
| IDE | Visual Studio Code | 1.91.1 | 
开发步骤及源码
1> 在 【Vue3】路由基础 的基础上新增 3 个页面组件。
-  Permission.vue<template><div class="permission">这是权限页面</div> </template><script setup lang="ts"> </script><style scoped lang="scss"> </style>
-  Log.vue<template><div class="log">这是日志页面</div> </template><script setup lang="ts"> </script><style scoped lang="scss"> </style>
-  Warn.vue<template><div class="warn">这是告警页面</div> </template><script setup lang="ts"> </script><style scoped lang="scss"> </style>
2> 修改 src/router/index.ts,添加新增的 3 个页面组件的路由配置,全部置于 /system 下作为二级路由使用。
import { createRouter, createWebHistory } from 'vue-router'
import Dashboard from '@/pages/Dashboard.vue'
import Log from '@/pages/Log.vue'
import Permission from '@/pages/Permission.vue'
import Warn from '@/pages/Warn.vue'
import System from '@/pages/System.vue'
import About from '@/pages/About.vue'const router = createRouter({// 路由器工作模式history: createWebHistory(),routes: [{path: '/dashboard',component: Dashboard},{path: '/system',component: System,children: [{path: 'permission',component: Permission},{path: 'log',component: Log},{path: 'warn',component: Warn}]},{path: '/about',component: About}]
})export default router
3> 修改 System.vue 页面组件,添加导航到 3 个新增页面组件的路由功能。
<template><div class="system"><div class="navigate"><RouterLink to="/system/permission" class="link" active-class="link-active">权限</RouterLink><RouterLink to="/system/log" class="link" active-class="link-active">日志</RouterLink><RouterLink to="/system/warn" class="link" active-class="link-active">告警</RouterLink></div><hr><div class="content"><RouterView /></div></div>
</template><script setup lang="ts">
import { RouterLink, RouterView } from 'vue-router'
</script><style scoped lang="scss">
.system {padding: 20px 10px;.navigate {margin-bottom: 20px;.link {background: #eee;border-radius: 3px;color: #aaa;margin-right: 5px;padding: 5px 15px;text-decoration: none;}.link-active {background: #75C5BA;color: blue;}}
}
</style>
4> 执行命令 npm run dev 启动应用,浏览器访问:http://localhost:5173/,点击左侧菜单进入 系统管理 页面,点击顶部按钮观察路由切换效果。
 
相关文章:
 
【Vue3】嵌套路由
【Vue3】嵌套路由 背景简介开发环境开发步骤及源码 背景 随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日子。本文内…...
 
pygame小游戏
代码存在一些bug,感兴趣可自行修改,游戏运行后玩法与吃金币游戏类似。(代码及结果比较粗糙,仅供参考) 注:(图片、音乐、音效文件老是上传上传不上,想要可私,也可以自己找…...
 
.Net Core IIS 程序报错 Access to the path c:\\windows\\TEMP\\poifiles is denied
程序运行报错:Access to the path c:\\windows\\TEMP\\poifiles is denied ,此错误本文介绍两种解决办法,选择适合你的方法即可;一般.Net程序运行方案二可能比较常用。 解决方案一: 从 IIS 访问文件系统 如果您在浏…...
 
交换机VLAN配置中Tagged与Untagged端口的差异和应用区别
VLAN(虚拟局域网)是一种将局域网设备从逻辑上划分为不同虚拟工作组的技术。它打破了传统局域网在物理位置上的限制,允许网络管理员根据功能、部门或安全需求等因素,将同一物理网络中的设备划分到不同的逻辑网络中。每个VLAN都像一…...
@OneToOne注解的作用
OneToOne 注解在 Java Persistence API (JPA) 中用于定义实体之间的一对一关系。这种关系意味着两个实体之间通过一个唯一键相互关联,即一个实体中的一个字段(通常是主键或唯一字段)对应于另一个实体中的一个字段(也可以是主键或唯…...
 
vue动画、过渡效果
vue动画、过渡效果 一.动画二.过渡三.多个元素过渡四.第三方库的使用五.总结 一.动画 1.默认.v-enter-active/.v-leave-active, 如果有name则.name-enter-active/.name-leave-active 2.appear意思是一打开页面就 实现动画,是appear"true"的简写 二.过渡 三…...
在 Vue 3 项目中使用 Element UI Plus <el-calendar>组件与时区处理
文章目录 前言简介<el-calendar> 组件组件定制基础自定义内容示例优化点 时区处理时区问题简介获取时区偏移量 下期扩展:自己实现一个<el-calendar> 的思路结语 前言 简介 在 Vue 3 项目开发过程中,我们经常需要对 UI 组件进行定制以满足特…...
 
【系统架构设计】计算机网络
【系统架构设计】计算机网络 网络架构与协议网络互联模型OSI/RM 结构模型TCP/IP结构模型IPv6 局域网与广域网局域网特点 网络互连与常用设备网络互联设备交换技术路由技术 网络存储技术 网络架构与协议 网络互联模型 OSI/RM 结构模型 1977年,国际标准化组织为适应…...
 
《中国数据库前世今生》——历史的深度与未来的展望
在探索科技与历史的交织中,我有幸观看了《中国数据库前世今生》这部纪录片。影片开头它不仅是一段技术演进的回顾,更是中国IT领域从跟随到引领的壮丽史诗。后续深刻研读了专家们的深刻讨论,通过这部纪录片,我深刻感受到了数据库技…...
 
web前端之实现霓虹灯背景魔术卡、旋转的背景动画、模糊效果、边框、变量、filter
MENU 前言效果图htmlstyle 前言 代码段定义一个名为Magic Card的卡片,并通过一系列CSS属性和动画效果来美化和增强该卡片的视觉效果。 效果图 html <div class"card">Magic Card </div>style 代码 property --rotate {syntax: "<a…...
几款免费的时序数据库对比
InfluxDB、TDengine、OpenTSDB、QuestDB都是当前主流的时序数据库,它们在性能、功能、适用场景等方面各有特点。下面将从多个维度对这四个数据库进行对比分析: 一、性能 InfluxDB: 高效的时间序列数据写入性能,自定义TSM引擎&am…...
 
基于springboot的乐享田园系统
TOC springboot181基于springboot的乐享田园系统 第1章 绪论** 1.1 课题背景 二十一世纪互联网的出现,改变了几千年以来人们的生活,不仅仅是生活物资的丰富,还有精神层次的丰富。在互联网诞生之前,地域位置往往是人们思想上不…...
深入解析Objective-C中NSParagraphStyle的段落样式处理艺术
标题:深入解析Objective-C中NSParagraphStyle的段落样式处理艺术 在Objective-C的世界中,文本排版是一个复杂但至关重要的话题。NSParagraphStyle作为其中的核心组件,扮演着决定文本段落外观和布局的关键角色。本文将深入探讨NSParagraphSty…...
 
Qt编程技巧小知识点(2)GPIB缓存区数据读取
文章目录 Qt编程技巧小知识点(2)GPIB缓存区数据读取小结 Qt编程技巧小知识点(2)GPIB缓存区数据读取 大端小端的问题,其主要表现如下例子: 例如:输入为QByteArray str "#14M\xB6q\xC1\n&qu…...
 
数的个位相加
给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。返回这个结果。 示例 1: 输入: num 38输出: 2 解释: 各位相加的过程为: 38 --> 3 8 --> 11 11 --> 1 1 --> 2 由于 2 是一位数,所以返回 2。…...
专业技能(挖坑填坑)——MYSQL的索引、日志、事务、存储引擎、锁机制等相关原理
熟悉MySQL的使用,熟悉MYSQL的索引、日志、事务、存储引擎、锁机制等相关原理。 1.mysql索引,索引的底层数据结构实现 索引就是目录可以帮助快速的找到对应的资源。 MySQL默认的InnoDB存储引擎使用的索引底层数据结构是BTree。BTree是一种多路搜索查找树…...
C++(27): 线程池
目录 1. 概述 2. 例程 (1)ThreadPool.h (2)ThreadPool.cpp (3)Start.cpp (4)编译 1. 概述 线程池技术绝不是C独有的,Java和Python都有比较晚完善的线程池构造接口…...
 
每日一题-贪心算法
122. 买卖股票的最佳时机 II - 力扣(LeetCode) 55. 跳跃游戏 - 力扣(LeetCode) 这个题目一开始肯定是会懵,就比如说一开始先跳几步,之后再怎么跳,其实我们就可以用最大范围来算就行了࿰…...
PSO 算法实例(手动推导过程)
PSO 算法实例 引言正文PSO 算法步骤PSO 实例步骤1 定义目标函数步骤2 初始化每个粒子的位置和速度步骤3 使用目标函数进行评估步骤4 更新单个粒子的最佳位置(局部最优值)步骤5 更新全局最佳位置(全局最优值)步骤6 更新每个粒子的位置和速度步骤7 使用目标函数评估新的位置步…...
解决antd TreeSelect 返回值不包含父节点问题 -自定义组件(react)
在写一个表单时使用了antd的 TreeSelect,在对TreeSelect的值提交时发现,父节点的值在半选状态时未提交,在选中状态时(子节点全选),子节点不提交,只提交父节点,这与后端需求不符&…...
 
微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...
 
RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
 
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
 
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...
 
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
管理学院权限管理系统开发总结
文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...
