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 友好展示和用户体验要求较高的项目。在选择路由模式时,需要综合考虑项目需求和用户体验,选择最适合的模式。

相关推荐
志尊宝25 分钟前
Vue3 零基础每日笔记(032):Suspense 与异步组件——懒加载与顶层 await 终极方案
前端·javascript·vue.js·笔记·html5
Alice-YUE31 分钟前
前端速通 Agent:5 个项目,一条学习路径
前端·大模型·ai agent·学习路径·deerflow
是立不是利37 分钟前
前端分页逻辑与边界场景实战解析
前端·javascript
小聪7081 小时前
elpis-core 动态组件扩展设计
前端
Amos_Web1 小时前
Rspack 源码解析(七):Module、Chunk 与加载树优化
前端·rust·源码阅读
OpenTiny社区1 小时前
从开发到运行:OpenTiny NEXT 如何构建 Agent 时代的 Web 应用?
前端·github·ai编程
愿得一猪蹄1 小时前
前端性能优化,Core Web Vitals 三个指标到底怎么改
前端
xy34531 小时前
Axure 9.0 中继器创建与设置步骤
前端·ui·html·axure·原型·产品设计
FEF前端团队1 小时前
01# Vibe Coding工作流设计思维:前端开发者的协作框架
前端·cursor·vibecoding
计算机魔术师2 小时前
OpenAI 发布模型错位报告框架,披露未发布模型自行修改自身指令案例
前端