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

相关推荐
时间的情敌8 小时前
《回顾 2018 前端:Vue2 成熟期,Webpack4 发布,PWA 大火》
前端
Java后端的Ai之路8 小时前
前端技术Vue-09-webpack-vuejs-实战
前端·vue.js·webpack
LMT流氓兔8 小时前
第五单元——第4课:给工具参数加校验
java·前端·算法·ai·langchain
涛涛ing8 小时前
React Compiler正式“Rust化”:你项目里的Babel插件,正在被编译进打包器
前端
迷迭绿9 小时前
Cesium 轨迹回放播放器
前端·javascript·cesium
HolySaga9 小时前
我用 UTS 写了一个三端同构的蓝牙插件(Android / iOS / 鸿蒙 NEXT),把踩过的坑都讲给你听
前端
程序员老赵9 小时前
Docker 部署 XWiki:轻松搭建企业知识库与协作 Wiki
前端·docker·开源
console.log('npc')9 小时前
第 10 章 更多业务模块扩展
前端·人工智能·大模型
行者全栈架构师9 小时前
我用 TRAE Work 把桌游之夜搬进了浏览器:一个计分器的从创意到上线
前端·算法·架构
山雀~10 小时前
线上CI流水打包失败排查思路案例
前端·ci/cd