【面试题系列Vue02】Vue Router 路由都有哪些模式?各模式之间有什么区别?

embedded/2024/12/22 16:31:18/

官方解析

Vue Router 路由有三种模式:

  1. hash 模式:使⽤ URL 中的 hash(即 # 后面的内容)来作为路由路径。
    在这种模式下,页面不会重新加载,只会更新 hash 值,并触发路由变化,从而渲染对应的组件。
  2. history 模式:使⽤ HTML5 中新增的 History API 来管理浏览历史记录,从而实现页面的前进和后退。
    在这种模式下,URL 中不会带有 # 号,而是使用真实的 URL 路径来作为路由路径。
  3. abstract 模式:在不需要基于浏览器的 API 时,可以使用这种模式。
    在这种模式下,路由器并不会监听 URL 变化,而是通过调用 router.replace 或 router.push 来进行导航。

区别:

  1. hash 模式可以兼容较⽼的浏览器,但 URL 中会带有 # 号。
  2. history 模式无需带有 # 号,更加美观,但需要后端⽀持,否则刷新页面会导致 404 错误。
  3. abstract 模式主要用于⼀些特定场景,例如在使⽤ Node.js 时,可以使用 abstract 模式来构建路由。
    ⼀般来说,如果需要⽀持较⽼的浏览器,或者不需要后端⽀持,可以使用 hash 模式;
    否则建议使用 history 模式。

一个总结

Vue Router 路由有三种模式:hash 模式、history 模式和 abstract 模式。
在这里插入图片描述
⼀般情况下,我们建议使用 history 模式,因为它对 SEO 更加友好、URL 更加规范,并且随着 HTML5 技术的普及,浏览器兼容性也不再是问题。
但是在特定场景下,如需要⽀持 IE9 及以下浏览器,或者不方便进行服务端配置时,可以选择使用 hash 模式。
而 abstract 模式则适⽤于⼀些特殊的场景,如⾮浏览器环境下的应⽤程序或者只需要使⽤编程式导航的情况。

忙里抽空更新一下~


http://www.ppmy.cn/embedded/97935.html

相关文章

Electron项目依赖管理:最佳实践与常见错误

问题一 问题描述: 输入命令 pnpm add electron 后, electron 包在执行 postinstall 脚本时,尝试从网络上下载 Electron 二进制文件,但由于网络问题(如连接超时或代理设置问题),导致下载失败。 λ pnpm a…

FreeRTOS 快速入门(三)之任务管理

目录 一、任务创建与删除1、什么是任务2、创建任务3、任务的删除 二、任务优先级和 Tick1、任务优先级2、Tick3、 修改优先级 三、任务状态1、阻塞状态(Blocked)2、暂停状态(Suspended)3、就绪状态(Ready)4、状态转换 四、Delay 函数五、空闲任务及其钩子函数1、介绍2、使用钩子…

C#基于SkiaSharp实现印章管理(6)

除了文本,印章设计模块的绘图功能已经差不多了。在实现文本绘制之前(主要是文本绘制相对比较麻烦),本文先实现将印章导出为pdf或图片的功能。   不论是在控件中绘制,还是在图片或pdf文件中绘制印章,对Ski…

5.1、生成树协议stp

一、广播风暴 广播风暴(Broadcast Storm)是网络中的一种现象,通常发生在局域网(LAN)中。当网络中的交换机或路由器配置错误,或环路没有被有效控制时,广播帧会在网络中无限制地传播,…

安全基础学习-SM4加密算法

SM4 是一种中国国家密码标准(GB/T 32907-2016)中定义的分组加密算法,又称为“中国商用密码算法SM4”。它是由中国国家密码管理局发布的,并广泛应用于金融、电子商务和其他需要数据加密的场景。 1、SM4 算法概述 SM4 是一种对称加密算法,意味着加密和解密使用相同的密钥。…

深度学习,创新点,模型改进

深度学习 添加创新点 ①在现有模型上添加自己的创新点 ②或者混合多个模型等等 ③提供创新点 添加各种注意力机制,各种模型block。 机器学习,目标检测,目标识别,语义分割,GAN, CNN等(只要是深度学习均可) 编…

软件运维实施维保方案(Doc完整版原件)

1.项目情况 2.服务简述 2.1服务内容 2.2服务方式 2.3服务要求 2.4服务流程 2.5工作流程 2.6业务关系 2.7培训 3.资源提供 3.1项目组成员 3.2服务保障 软件全套资料部分文档清单: 工作安排任务书,可行性分析报告,立项申请审批表,产…

PHP初级栈进阶篇

小刘小刘,下雨不愁 (收藏,关注不迷路) 这里我会更新一些php进阶知识点,新手想再进一步可以有个方向,也有个知识图谱的普及 当然本篇不止写技术 会涉及一些进阶路线 我也是在这里积累,希望和同行者一起进步为后来者…