vue中路由的hash和history模式的区别

本文介绍了前端路由的两种主要模式:Hash模式和History模式。Hash模式的URL带有#,特点是改变hash值不会重新加载页面,适用于低版本浏览器,常用于SPA应用。而History模式的URL更美观,但需要后台配置支持,刷新页面时若无对应路由可能返回404。History模式通过onpopstate事件监听页面历史记录变化,提供更好的用户体验。
摘要由CSDN通过智能技术生成

hash模式:是开发中默认的模式,它的URL带着一个#,例如:http://www.abc.com/#/vue,它的hash值就是#/vue。

特点:hash值会出现在URL里面,但是不会出现在HTTP请求中,对后端完全没有影响。所以改变hash值,不会重新加载页面。这种模式的浏览器支持度很好,低版本的IE浏览器也支持这种模式。hash路由被称为是前端路由,已经成为SPA(单页面应用)的标配。

原理:hash模式的主要原理就是onhashchange()事件,使用onhashchange()事件的好处就是,在页面的hash值发生变化时,无需向后端发起请求,window就可以监听事件的改变,并按规则加载相应的代码。除此之外,hash值变化对应的URL都会被浏览器记录下来,这样浏览器就能实现页面的前进和后退。虽然是没有请求后端服务器,但是页面的hash值和对应的URL关联起来了。

history模式:history模式的URL中没有#,它使用的是传统的路由分发模式,即用户在输入一个URL时,服务器会接收这个请求,并解析这个URL,然后做出相应的逻辑处理。

特点:当使用history模式时,URL就像这样:http://abc.com/user/id。相比hash模式更加好看。但是,history模式需要后台配置支持。如果后台没有正确配置,访问时会返回404。虽然history模式丢弃了丑陋的#。但是,它也有自己的缺点,就是在刷新页面的时候,如果没有相应的路由或资源,就会刷出404来。

切换为history模式:

获取页面的hash变化:

 

周小航.
关注 关注
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue路由hash模式history模式原理区别及优缺点
qq_57334853的博客
07-15 4145
今天说说Vue路由hash模式history模式区别,这个也是面试常问的问题。 总结 传统的路由指的是:当用户访问一个url时,对应的服务器会接收这个请求,然后解析url的路径,从而执行对应的处理逻辑。这样就完成了一次路由分发。 前端路由是不涉及服务器的,是前端利用hash或者HTML5的 关于Vue路由、一个单页面应用可以做到多路由跳转并按需加载页面代码,这样的方式就很神奇,以往的做法都是通过锚点来定位对应的页面代码,而这种古老的方式存在最大的缺陷就是首屏加载缓慢,一次性加载了所有页面代码。...
vue多页面项目路由使用history模式的方法
01-21
之前写了一个vue项目需要添加一个打印的页面,需要使用多页面的模式进行开发,vue-cli3出初始化的项目配置多页面还是很容易的,但是发现print.html没有办法配置history模式路由,一旦使用history模式路由。...
vue-routerhashhistory两种模式区别
10-18
大家都知道vue-router有两种模式hash模式history模式,这里来谈谈vue-routerhashhistory两种模式区别。感兴趣的朋友一起看看吧
前端路由Vue-router hash模式history模式区别
热门推荐
Kuroko's Development Notes
09-08 3万+
咱们今天说说VUE路由hash模式history模式区别,这个也是面试常问的问题,不要小看这道题其实问到这里的时候那个面试官应该是个大牛,开发经验丰富,这个题其实就是考验你的开发经验是否属实。 咱们来看看小白的回答。 小白回答:hash模式url带#号,history模式不带#号。 回答总结:这个回答其实和没有回答是一样,百度一下都知道了,官网文档也有,如果这样回答就能通过,那么那个...
vuehashhistory区别
最新发布
唐家小妹的博客
07-21 521
总的来说,hash 模式适合对浏览器兼容性要求较高的项目,而 history 模式适合对 URL 友好展示和用户体验要求较高的项目。hash 模式的优点是对浏览器的兼容性较好,因为 hash 不会触发页面的重新加载,可以在不支持 HTML5 History API 的浏览器正常使用。history 模式利用 HTML5 History API 来实现路由,可以更加友好地展示 URL,不包含 # 符号,更符合用户习惯。在实际开发,可以根据项目的需求和对浏览器兼容性的要求选择合适的路由模式
vue路由的两种模式hashhistory区别
qq_26780317的博客
06-11 2万+
前言:众所周知,vue-router有两种模式hash模式history模式,下面来看看两者的区别。 一、基本情况 直观区别hash模式url带#号,history模式不带#号。 1.hash模式 hash就是指url尾巴后的#号以及后面的字符。这里的#和css里的#是一个意思。hash也被称为锚点,本身是用来做页面定位的,它可以是对应的id元素显示在可视区域内。 由于hash值变化不会导致游览器向服务器发出请求,而且hash改变会...
Vue平凡之路 (一):Vue-router hash模式history模式
weixin_33989780的博客
07-20 5600
Vue-router hash模式history模式的关系 在vue路由配置有mode选项 最直观的区别就是在url hash 带了一个很丑的 # 而history是没有#的 mode:"hash"; mode:"history"; hash模式和histo...
vue-router两种模式:hash模式history模式
ai_feng123的博客
11-25 876
1. hash模式vue-router默认hash模式hash模式背后的原理是onhashchange事件。 window.onhashchange=function(){ let hash=location.hash.slice(1); document.body.style.color=hash; } (localtion是js里管理地址栏的内置对象,是window对象的一部分,可...
vue路由跳转不计入history的操作
10-14
默认情况下,vue-router有两种模式hash模式history模式。在history模式下,路由看起来更美观,因为它没有URL的井号(#), 但这也带来了一个问题,就是在项目打包发布后,如果没有正确的服务器配置,直接通过地址栏...
hash模式history模式区别
04-07
Hash模式History模式Vue.js路由模式的两种选择。Hash模式使用URL的hash部分来模拟一个完整的URL,而History模式则使用HTML5的History API来实现无刷新页面切换。Hash模式的优点是在浏览器兼容性上更好,而...
hash路由history路由区别
weixin_62930485的博客
03-14 1万+
单页应用是在移动互联时代诞生的,它的目标是不刷新浏览器,而通过感知地址栏的变化来决定内容区域显示什么内容。要达成这个目标,我们要用到前端路由技术,具体来说有两种方式来实现:hash模式history模式。 不同之处有三点。 一是原理不同。hash模式的实现原理是通过监听hashChange事件来实现的。history模式是通过调用 history.pushState方法(或者replaceState) 并且 监听popstate事件来实现的。history.pushState会追加历史记录,并更换地
Vue-router hash模式history模式区别
12-10
Vue-router hash模式history模式的关系 在vue路由配置有mode选项 最直观的区别就是在url hash 带了一个很丑的 # 而history是没有#的 mode:”hash”;   mode:”history”;  hash模式history模式的不同 对于vue这类渐进式前端开发框架,为了构建 SPA(单页面应用),需要引入前端路由系统,这也就是 Vue-Router 存在的意义。前端路由的核心,就在于 —— 改变视图的同时不会向后端发出请求。 为了达到这一目的,浏览器当前提供了以下两种支持: hash —— 即地址栏 URL
Vue-router hash模式history模式的不同
wfly blog
10-28 322
vue路由配置有mode选项 最直观的区别就是在url hash 带了一个很丑的 # 而history是没有#的 mode:"hash";// 默认 mode:"history"; 前端路由的核心,就在于 —— 改变视图的同时不会向后端发出请求。 为了达到这一目的,浏览器当前提供了以下两种支持: hash —— 即地址栏 URL 的 # 符号(此 hash 不是密码学里的散列...
vuehash路由history路由区别
qq_44917015的博客
05-09 292
news.onclick = function(){ } sports.onclick = function(){ } // onhashchange 事件在当前 URL 的锚部分(以 '#' 号为开始) 发生改变时触发 。 onhashchange = function(e){ let val = location.hash.slice(1); switch(val){ ..
Vuehashhistory两种路由模式区别
qq_41930094的博客
08-11 1417
Vue的两种路由模式HashHistoryHash模式History模式Vue文档对路由模式~阐述 Hash模式 属于Vue路由的默认模式。 访问的路径包含#号,#后面就是对应页面的路由名称。 支持页面刷新。 获取当前页面路由某个参数值,使用jssplit()进行截取获取。 History模式 另一种vue路由模式,路径没有#号,访问路径看起来像api请求一样。 需要将前端对应路由,配置到后端数据库,否则直接配置history模式,页面无法刷新(404) 获取当前页面路由某个参数值,使用th
vuehashhistory路由区别
ASURA
04-08 247
Hash 路由模式是使用 URL hash 值实现前端路由,例如 #/home、#/about,每次 URL 变化都会触发页面的刷新。2、SEO 受影响:对于单页应用来说,使用 Hash 路由模式实现路由功能时,SEO 优化会受到影响。2、刷新操作时,hash路由会加载到地址栏对应的页面,而history路由一般会出现404错误。浏览器支持:所有浏览器都支持 URL hash 值,可以方便的实现路由功能。3、刷新页面:每次 URL 变化都会触发页面的刷新,用户体验不够流畅。
vue-router的两种模式区别
兔子juan的博客
08-26 9966
为什么要有 hashhistory? 对于 Vue 这类渐进式前端开发框架,为了构建 SPA(单页面应用),需要引入前端路由系统,这也就是 Vue-Router 存在的意义。前端路由的核心,就在于 —— 改变视图的同时不会向后端发出请求。 为了达到这一目的,浏览器当前提供了以下两种支持: hash —— 即地址栏 URL 的 # 符号(此 hash 不是密码学里的散列运算)。 比...
vue路由模式路由hashhistory模式区别
单口相声Jay
03-27 721
hash模式适用于兼容性要求较高的应用,而history模式适用于需要进行SEO优化的应用。
vue-routerhashhistory区别
m0_49016709的博客
04-23 293
Vue-router hash模式history模式的关系 在vue路由配置有mode选项 最直观的区别就是在url hash 带了一个 # 而history是没有#的 mode:“hash”; mode:“history”; hash模式history模式的不同 对于vue这类渐进式前端开发框架,为了构建 SPA(单页面应用),需要引入前端路由系统,这也就是 Vue-Router 存在的意义。前端路由的核心,就在于 —— 改变视图的同时不会向后端发出请求。 为了达到这一目的,浏览器当前提供了以
Vue路由hash模式history模式区别
04-15
Vue路由hash模式history模式区别: - Hash模式路由路径以“#”作为分隔符,#后面的内容为url的hash值。在url变化时,不会向服务器发送请求,只会在浏览器历史记录添加一条记录,可以通过监听hashchange事件来进行前端路由跳转。 - History模式路由路径不带“#”,使用HTML5里的History API进行url的变化,变化时会向服务器发送请求,需要后端的支持,可以通过前端路由的pushState和replaceState等API来进行路由跳转。 总结来说,Hash模式可以兼容各种浏览器,并且不需要后端的支持;而History模式可以实现更加真实的url路径显示,但需要后端的支持。
写文章

热门文章

  • uniapp中单选按钮的实现 12186
  • uniapp小程序分享功能onShareAppMessage函数传参数 5704
  • 小程序-uni.previewImage实现点击图片放大的预览功能 5163
  • HTML文本界面英文无法自动换行的解决办法 3955
  • uniapp开发小程序返回上一页 3704

最新评论

  • HTML爱心代码 | 《点燃我温暖你》中男主角——理工男李峋同款

    海悦子: 大佬 请问一下 如果要在爱心里面加名字 要写在哪里呀表情包表情包表情包

  • electron-builder vue 打包后element-ui字体图标不显示问题

    蒙面价肥猫: 设置了还是不行啊

  • electron-builder vue 打包后element-ui字体图标不显示问题

    CSDN-Ada助手: Vue入门 技能树或许可以帮到你:https://edu.csdn.net/skill/vue?utm_source=AI_act_vue

  • uniapp小程序分享功能onShareAppMessage函数传参数

    mmpo789: 找了半天,看到博主的讲解, 解决了我的问题 谢谢

  • uniapp中单选按钮的实现

    周小航.: 当然,这个就是单选框,当然不能多选,多选要用多选框表情包

最新文章

  • electron-builder vue 打包后element-ui字体图标不显示问题
  • 点击页面切换
  • 使用electron属性实现保存图片并获取图片的磁盘路径
2024年2篇
2023年9篇
2022年69篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家珠海玻璃钢卡通雕塑哪家便宜汕头革命主题玻璃钢卡通雕塑南阳玻璃钢大型雕塑商场dp景点美陈伊春雕塑玻璃钢卡通昌平商场美陈灯饰画加工厂长春玻璃钢人物雕塑厂家玻璃钢雕塑音乐人物商场手扶电梯口装修美陈吉林玻璃钢熊猫雕塑厂家山西省玻璃钢雕塑哪里好中山玻璃钢卡通雕塑批发贵州玻璃钢座椅雕塑设计大型玻璃钢彩绘雕塑大型户外玻璃钢雕塑泉州模压法玻璃钢雕塑厂家端午节商场门前美陈江苏省玻璃钢雕塑厂玻璃钢卡通水果雕塑造价内蒙古玻璃钢造型雕塑东莞玻璃钢花盆批发北京人物玻璃钢雕塑市场双11商场美陈阿勒泰玻璃钢花盆五华区玻璃钢雕塑设计哪家好永康人物玻璃钢雕塑厂家玻璃钢雕塑优势上海主题商场美陈制作户外玻璃钢人物雕塑要求商场商业美陈定制价格香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化