【Vue3】深入理解Vue3路由器的工作原理to的两种写法

news/2024/4/29 19:41:43

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

文章目录

  • 🍋路由器的核心概念
  • 🍋history模式
  • 🍋Hash模式
  • 🍋to的两种写法
  • 🍋总结

Vue3提供了一个强大而灵活的路由器,它能够帮助我们构建单页面应用程序(SPA)并管理页面之间的导航。本文将深入探讨Vue3路由器的工作原理,包括其核心概念、使用方法以及一些高级技巧。

🍋路由器的核心概念

在Vue3中,路由器的核心概念包括路由器实例、路由器选项、路由表、路由视图和导航守卫。

  • 路由器实例:我们可以通过创建一个路由器实例来启动Vue3的路由器。路由器实例包含了路由器的配置选项,例如路由表、路由模式(hash或history)等。

  • 路由器选项:路由器选项是一个包含路由配置的对象。它定义了应用程序的路由规则,包括路由路径和对应的组件。

  • 路由表:路由表是一个映射路由路径和组件的配置对象。它告诉路由器在匹配到特定路径时应该渲染哪个组件。

  • 路由视图:路由视图是一个用来显示匹配到的路由组件的组件。在Vue3中,我们使用组件来渲染匹配到的组件。

  • 导航守卫:导航守卫是一个可以在路由跳转时进行拦截的函数。我们可以使用导航守卫来实现路由的权限控制、页面加载状态管理等功能。

本节主要介绍的就是history和hash模式,首先我们来看看history模型

🍋history模式

在 history 模式下,Vue Router 使用浏览器提供的 History API 来管理路由状态。这种模式下的 URL 更加友好,不再需要 # 符号。
特点

无 # 符号:history 模式的 URL 更加美观,不含有 # 符号,更符合传统 URL 的表现形式。
需要服务器支持:由于 history 模式使用了 History API,因此需要服务器的支持。在生产环境中,需要配置服务器以支持对所有页面的访问都返回同一个 HTML 文件,以便在路由跳转时正确加载应用程序。

使用场景

需要SEO:对于需要被搜索引擎索引的应用,使用 history 模式更为合适,因为搜索引擎可以正确解析这种形式的 URL。


上节我们使用的就是history模式
在这里插入图片描述

🍋Hash模式

在 hash 模式下,URL 中的 # 符号被用作路由地址与其后面的参数(称为哈希)的分隔符。因此,http://example.com/#/foo 和 http://example.com/#/bar 都属于 hash 模式下的 URL。
特点

兼容性良好:hash 模式的 URL 兼容性较好,因为在大部分浏览器中,改变 URL 中的哈希不会重新加载页面。
简单实现:hash 模式不需要服务器端的额外配置,可以直接在前端实现。

使用场景

静态站点:对于静态站点或不需要SEO的应用,hash 模式是一个简单而有效的选择。

如果我们想用Hash模式,和上一节一样我们导入

import {createWebHashHistory} from 'vue-router'

之后我们修改一下

history:createWebHashHistory(),

运行后的界面的地址栏就会有#了

在这里插入图片描述

🍋to的两种写法

这里或许有人忘了to在哪里出现过吧,提醒一下RouterLink,路由跳转的组件

下面是两种to的写法,具体用哪个具体情况具体分析,效果一样

<RouterLink to="/about" active-class="MT">关于</RouterLink>
<RouterLink :to="{path:'/about'}" active-class="MT">关于</RouterLink>

🍋总结

在开发过程中,可以根据实际需求选择合适的模式来使用

请添加图片描述

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

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

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

相关文章

Vue3 ElementPlus-table组件(合计)合并列

在使用ElementPlus的table组件的时候&#xff0c;我们通常会处理合计&#xff0c;当遇到合计行需要合并列的时候&#xff0c;可以这样做。 核心就是获取标签&#xff0c;对标签的CSS样式进行设置&#xff0c;以达到合并单元格的效果。 Template <el-tablemax-height"ca…

浏览器与服务器通信过程(HTTP协议)

目录 1 概念 2 常见的 web 服务器有 3 浏览器与服务器通信过程 3.1 DNS 3.2 URL 4 HTTP请求方法和应答状态码 4.1 HTTP请求报文段实例 4.2 HTTP请求方法 5 HTTP应答报头和应答状态 5.1 HTTP的应答报头结构 5.2 HTTP的应答状态 1 概念 浏览器与 web 服务器在应用层通…

开源大数据集群部署(十五)Zookeeper集群部署

作者&#xff1a;櫰木 1、集群规划 主机版本角色系统用户hd1.dtstack.com3.7.1followerzookeeperhd2.dtstack.com3.7.1leaderzookeeperhd3.dtstack.com3.7.1followerzookeeper 2、zookeeper kerberos主体创建 在生产中zk服务端和客户端票据可以设置成不通名称或相同名称&am…

华为数通方向HCIP-DataCom H12-821题库(多选题:161-180)

第161题 以下关于IPv6优势的描述,正确的是哪些项? A、底层自身携带安全特性 B、加入了对自动配置地址的支持,能够无状态自动配置地址 C、路由表相比IPv4会更大,寻址更加精确 D、头部格式灵活,具有多个扩展头 【参考答案】ABD 【答案解析】 第162题 在OSPF视图下使用Filt…

web的部署

首先&#xff0c;我们鼠标右击此电脑&#xff0c;管理&#xff0c;添加角色和功能 默认下一步&#xff0c; 默认下一步&#xff0c; 默认下一步&#xff0c; 勾选web&#xff0c;点击下一步&#xff0c; 点击下一步&#xff0c; 默认下一步&#xff0c; 勾选所需功能&#xff0…

宠物小精灵之收服

题目描述 宠物小精灵是一部讲述小智和他的搭档皮卡丘一起冒险的故事。 一天&#xff0c;小智和皮卡丘来到了小精灵狩猎场&#xff0c;里面有很多珍贵的野生宠物小精灵。小智也想收服其中的一些小精灵。然而&#xff0c;野生的小精灵并不那么容易被收服。对于每一个野生小精灵而…