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

相关推荐
用户8313485930698几秒前
Cesium实现动态流动火烧云晚霞效果(可用slider调整火烧云浓度)
vue.js·webgl·cesium
专业抄代码选手2 分钟前
01|从手写 DOM 到虚拟 DOM:把 UI 从“操作”变成“描述”
前端·javascript·react.js
喜欢睡觉3 分钟前
单词管理系统
前端·后端
YHL11 分钟前
向量数据库入门(二):Embedding → 语义搜索 → RAG 日记助手
前端·架构
码视野12 分钟前
基于 Vue3 + Element Plus 的【青少年心理健康智能测评与 AI 情绪树洞陪护干预系统】设计与实现(含PRD/三端源码/大屏)
前端·vue.js·人工智能·vue3
专业抄代码选手13 分钟前
03|React 为什么需要协调:比较两棵树,而不是重建页面
前端·javascript·react.js
灯澜忆梦15 分钟前
【基于GO的Web开发11】gin获取URL‑Path 路径参数
前端·后端·golang·html·gin
王霸天16 分钟前
GLB 文件太大怎么办?我把它从 47MB 压到 8MB,全程没碰命令行
前端·javascript·程序员
半个落月16 分钟前
Next.js 16 笔记应用实战:Redis 数据链路与组件两版拆分详解
前端·redis·next.js
YIAN17 分钟前
告别等后端!React+Vite 前端独立开发全流程:接口封装 + Mock 方案 + 状态管理
前端·react.js·vite