vue中hash和history的区别 ?

在 Vue.js 中,路由模式可以使用 hash 模式和 history 模式,它们之间的主要区别在于 URL 的展示形式和对浏览器的兼容性:

Hash 模式:

在 hash 模式下,URL 中会包含一个 # 符号,例如 http://www.example.com/#/about。

hash 模式的优点是对浏览器的兼容性较好,因为 hash 不会触发页面的重新加载,可以在不支持 HTML5 History API 的浏览器中正常使用。

缺点是 URL 中包含 # 符号,不够美观,且可能影响 SEO。

History 模式:

在 history 模式下,URL 不包含 # 符号,例如 http://www.example.com/about。

history 模式利用 HTML5 History API 来实现路由,可以更加友好地展示 URL,不包含 # 符号,更符合用户习惯。

缺点是对浏览器的兼容性要求较高,需要浏览器支持 HTML5 History API,否则会出现兼容性问题。

区别:

主要区别在于 URL 的展示形式和对浏览器的兼容性:hash 模式 URL 中包含 # 符号,兼容性好;history 模式 URL 不包含 # 符号,更友好但兼容性要求高。

在实际开发中,可以根据项目的需求和对浏览器兼容性的要求选择合适的路由模式。

总的来说,hash 模式适合对浏览器兼容性要求较高的项目,而 history 模式适合对 URL 友好展示和用户体验要求较高的项目。在选择路由模式时,需要综合考虑项目需求和用户体验,选择最适合的模式。

相关推荐
Hilaku3 分钟前
Event Loop 这篇你看完就不用再看别的了!
前端·javascript·程序员
恋猫de小郭34 分钟前
Flutter 下 AOT 一个你怎么都想不出来的 Bug ,JIT 正常的计算,在 AOT 居然算错了
android·前端·flutter
晓得迷路了1 小时前
栗子前端技术周刊第 153 期 - Vitest 5.1、Remix v3.2、Node.js 27 Alpha...
前端·javascript·vite
Moment1 小时前
Harness Engineering 为什么是 AI Coding 的工程底座 ❓❓❓
前端·后端·面试
头发还在的女程序员1 小时前
基于 Spring Boot + Vue 3 + uni-app 的灵活用工系统:四端架构与业务流程设计
vue.js·spring boot·uni-app·灵活用工·灵工系统
风骏时光牛马2 小时前
生成一个AI面试复盘标题,只需要一个标题,不需要其他的任何文本。
前端
红尘散仙11 小时前
谁说终端只能敲键盘?我用 Rust 给小说阅读器加上了鼠标
前端·后端·rust
陈随易12 小时前
C++26 草案被否,二十八年来头一回
前端·后端·程序员
ZhengEnCi12 小时前
Agent 工具怎么折叠海量输出才「爽」:Trae、Claude Code 的渐进式披露设计原理
前端·agent