Vue学习笔记五--路由

news2024/11/16 20:59:16

1、什么是路由

2、VueRouter

   2、1VueRouter介绍

2、2使用步骤

2、3路由封装

3、router-link

3.1两个类名

3.2声明式导航传参

4、路由重定向、404

当找不到路由时,跳转配置到404页面

5、路由模式

6、通过代码跳转路由---编程式导航&传参

路由跳转时传参

跳转方式两种,传参方式两种

7、组件缓存

8、多级路由

在Vue中,多级路由指的是一个路由可以拥有多个子路由,这些子路由可以有不同的路径和组件。多级路由可以用于构建复杂的应用程序页面结构,使得页面的层次感更加明显。

在Vue中,使用Vue Router来实现多级路由。一个多级路由通常由一个父级路由和若干个子级路由组成。父级路由的组件模板中通常包含一个或多个<router-view>标签,用于显示匹配当前路径的子路由组件。

在Vue中创建多级路由的步骤如下:

1.在router/index.js文件中,使用Vue Router创建路由实例,并定义路由路径和组件。

2.在父级路由组件的模板中,使用<router-view>标签来占位子路由组件。

3.定义子级路由,包括其路径和组件。

4.在父级路由的组件逻辑中,使用children属性将子路由添加到该路由下。

在上面的示例中,/parent是父级路由路径,Parent.vue是父级路由组件。/parent/child是子级路由路径,Child.vue是子级路由组件。在父级路由组件的模板中,使用了<router-view>标签来占位子路由组件。

需要注意的是,在定义子级路由时,其路径应该是相对于父级路由路径的。例如,在上面的示例中,子级路由的路径为child,而不是/parent/child。
 

9、路由守卫

路由独享守卫作用于单个路由,它们在路由配置中定义。路由独享守卫有两个:beforeEnter和afterEnter。

下面的代码中,我们使用了user.isAdmin来判断用户是否是管理员,如果是管理员则可以访问/dashboard路由,否则跳转到/forbidden路由。

const routes = [
  {
    path: '/dashboard',
    component: Dashboard,
    beforeEnter: (to, from, next) => {
      if (user.isAdmin) { // 鉴权
        next() // 继续跳转
      } else {
        next('/forbidden') // 跳转到禁止访问页
      }
    }
  }
]

组件内守卫作用于单个组件,它们与全局守卫和路由独享守卫不同的是,它们不需要在路由配置中定义,而是在组件内定义

vue路由导航守卫(全局守卫、路由独享守卫、组件内守卫)_路由独享守卫 有afterenter 吗-CSDN博客

10、路由懒加载

vue3: https://github.com/Panyue-genkiyo/vue3-learning
vue2依据脚手架:https://github.com/Panyue-genkiyo/vue-advance
vue基础不依赖脚手架:https://github.com/Panyue-genkiyo/vue-learning

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

13年老鸟整理,自动化测试落地实施方案总结,看这篇就够了...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 一般来说&#xf…

C++类与对象基础(8)

目录 1. 隐式类型转换与关键字explicit: 1.1 隐式类型转换举例&#xff1a; 1.2 explicit关键字&#xff1a; 2. 友元&#xff1a; 2.1 友元函数&#xff1a; 2.2 友元类&#xff1a; 3. 内部类&#xff1a; 4. 勘误&#xff1a; 1. 隐式类型转换与关键字explicit: 1.1…

DelayQueue原理探究

DelayQueue并发队列是一个无界阻塞延迟队列&#xff0c;队列中的每个元素都有个过期时间&#xff0c;当从队列获取元素时&#xff0c;只有过期元素才会出队列。队列头元素是最快要过期的元素。 DelayQueue类图结构 由该图可知&#xff0c;DelayQueue内部使用PriorityQueue存放…

【揭秘APT攻击】——内网渗透实战攻略,带你领略网络安全的绝密世界!

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 &#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 介绍 什么是内网&#xff1f; 什么是内网渗透&#xff1f; 内网渗透的目的&#xff1a; 内网…

Spring MVC 参数接收

参数接收 Springmvc中&#xff0c;接收页面提交的数据是通过方法形参来接收&#xff1a; 处理器适配器调用springmvc使用反射将前端提交的参数传递给controller方法的形参 springmvc接收的参数都是String类型&#xff0c;所以spirngmvc提供了很多converter&#xff08;转换器…

CSS3实现轮播效果

在我们不使用JS的情况下&#xff0c;是否也可以实现轮播功能呢&#xff1f; 答应是可以的 上代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>轮播</title><style>.boss…

数据结构实验4:链表的基本操作

目录 一、实验目的 二、实验原理 1. 节点 2. 指针 3.链表的类型 3.1 单向链表 3.2 双向链表 3.3 单向循环链表 3.4 双向循环链表 4. 单链表的插入 4.1 头插法 4.2 尾插法 4.3 在指定位置插入元素 5. 单链表的删除 5.1 删除指定数值的节点 5.2 删除指定位置的节点 …

网络编程套接字(Socket)

文章目录 1 重点知识2 预备知识2.1 理解源IP地址和目的IP地址2.2 认识端口号2.3 理解 "端口号" 和 "进程ID"2.4 理解源端口号和目的端口号2.5 认识TCP协议2.6 认识UDP协议2.7 网络字节序 3 socket编程接口3.1 socket 常见API3.2 sockaddr结构 4 简单的UDP网…

statsmodels.tsa 笔记 detrend(去趋势)

1 基本使用方法 statsmodels.tsa.tsatools.detrend(x, order1, axis0) 2 参数说明 x数据。如果是二维数组&#xff0c;那么每一行或每一列将独立地去除趋势&#xff0c;但趋势的阶数是一样的。order趋势的多项式阶数。0 表示常数趋势&#xff08;即没有趋势&#xff09;&…

redis可视化工具 RedisInsight

redis可视化工具 RedisInsight 1、RedisInsight是什么2、下载RedisInsight3、使用RedisInsight4、其他redsi可视化工具 1、RedisInsight是什么 RedisInsight 是一个用于管理和监控 Redis 数据库的图形用户界面&#xff08;GUI&#xff09;工具。它是由 Redis Labs 开发的&…

React Native 桥接原生常量

一、编写并注册原生常量方法 在 SmallDaysAppModule 这个模块中有一个方法 getConstans &#xff0c;重载这个方法就可将自定义的常量返回&#xff0c;系统会自行调用该方法并返回定义的常量将其直接注入到 JS 层&#xff0c;在 JS 层直接获取即可。 二、JS 层获取原生常量&am…

YOLOv8 损失函数改进 | 引入 Shape-IoU 考虑边框形状与尺度的度量

🗝️改进YOLOv8注意力系列一:结合ACmix、Biformer、BAM注意力机制 论文讲解加入代码本文提供了改进 YOLOv8注意力系列包含不同的注意力机制以及多种加入方式,在本文中具有完整的代码和包含多种更有效加入YOLOv8中的yaml结构,读者可以获取到注意力加入的代码和使用经验,总…

【ECShop电子商务系统__软件测试作业】ECSHOP系统搭建文档+接口测试用例+接口文档+接口测试脚本

一、选题题目可选《ECShop电子商务系统》、《EPShop电子商城系统》或者自选其它的开源系统(至少有十个以上的功能模块的系统&#xff0c;不得选功能少、简单的系统)。 软件测试作业 说明:接口测试相关资料 二、具体要求 1、搭建测试系统并写出搭建被测系统的全过程。 2、根…

Pure Mathematics 3-(磨课课件)-反三角函数求导(更新中)

6.6 Differentiating trigonometric functions&#xff08;反三角函数求导&#xff09; Edexcel Pure Mathematics 3(2018版本教材) /-------------------------------------------------------------------------------------------------------------------- Prior Knowledge…

Python实现PDF—>Excel的自动批量转换(附完整代码)

Python实现PDF—>Excel的自动批量转换&#xff08;附完整代码&#xff09; 话不多说&#xff0c;先看效果&#xff01; 需要转换的PDF&#xff1a; 转换后的Excel&#xff1a; 01、底层原理 PDF 到 Excel 的转换涉及不同文件格式之间的数据提取和重构。底层原理可以简…

抖音小程序+乔拓云教育系统:让课程销售飞起来

随着数字媒体的迅猛发展&#xff0c;抖音已经成为了一个广受欢迎的社交平台。而当抖音遇上教育&#xff0c;一场全新的学习革命就此展开。特别是借助乔拓云教育系统&#xff0c;培训班可以轻松地开启抖音营销之旅&#xff0c;将优质课程带给更多潜在学员。 乔拓云教育系统作为一…

【Spring Boot】SpringMVC入门

1.什么是springMVC MVC就是把一个项目分成了三部分&#xff1a; MVC是一种思想。Spring进行了实现,称为Spring MVC。SpringBoot是创建SpringMVC项目的一种方式而已。springMVC对于MVC做出了一些改变&#xff1a; 当前阶段,MVC的概念又发生了一些变化,后端开发人员不涉及前端页…

【python基础】一文搞懂:Python 中轻量型数据库 SQLite3 的用法

一文搞懂&#xff1a;Python 中轻量型数据库 SQLite3 的用法 文章目录 一文搞懂&#xff1a;Python 中轻量型数据库 SQLite3 的用法1 引言2 SQLite3 简介3 基本步骤4 示例代码4.1 连接数据库4.2 创建表4.3 插入数据4.4 查询数据4.5 更新/删除数据4.6 关闭数据库连接 5 实例演示…

作业--day44

完善对话框&#xff0c;点击登录对话框&#xff0c;如果账号和密码匹配&#xff0c;则弹出信息对话框&#xff0c;给出提示”登录成功“&#xff0c;提供一个Ok按钮&#xff0c;用户点击Ok后&#xff0c;关闭登录界面&#xff0c;跳转到其他界面。如果账号和密码不匹配&#xf…

Win10下python3和python2同时安装并解决pip共存问题

特别说明&#xff0c;本文是在Windows64位系统下进行的&#xff0c;32位系统请下载相应版本的安装包&#xff0c;安装方法类似。 使用python开发&#xff0c;环境有Python2和 python3 两种&#xff0c;有时候需要两种环境切换使用&#xff0c;下面提供详细教程一份。 1、下载…