深入解析:HashHistory与BrowserHistory的区别及应用场景

更新:11-17 名人轶事 我要投稿 纠错 投诉

大家好,关于深入解析:HashHistory与BrowserHistory的区别及应用场景很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

browserHistory 存在浏览器兼容性问题。 browserHistory使用window.history对象中的pushState和replaceState方法。这两个方法是HTML5中新的history API,并不是所有浏览器都支持。

browserHistory 需要服务器端支持。当子页面被刷新或者其他人通过复制子页面的路由地址再次访问时,就会向服务器发送请求。传递给服务器的请求地址是子页面对应的路由地址,服务器也必须做相应的Parse并返回前端页面。由于hashHistory将路由地址放在哈希值中,请求服务器时会忽略URL中的哈希值,因此服务器只需要处理首页的请求地址,不需要做其他处理。

hashHistory不能设置强制更新模式。 hashHistory的路由地址放在hash值中,通过window.position.hash修改hash值不会触发浏览器刷新页面,所以hashHistory无法设置强制更新模式,但browserHistory可以。

hashHistory可以设置哈希模式hashType。 hashType有三个枚举值,分别是“slash”、“noslash”和“hashbang”,默认是“slash”,可以。当值为“slash”时,哈希符号“#”后面会跟“/”;当值为“noslash”时,“#”后面没有“/”;当值为“hashbang”时,“#”将连接到“!”和“/”,这样搜索引擎在抓取URL时,会抓取URL中的hash来获取更全面的信息。

hashHistory只能从hashHistory.location.state读取状态值,而不能从window.history.state读取状态值。历史库的第4 版不建议在hashHistory 中使用状态,尽管状态可以通过位置对象传递。但作为页面级状态,它不具备持久化状态的能力,因为window.location对象没有保存状态的方法。当浏览器返回然后转发到该页面时,从hashHistory.location.state 读取的值将为空,browserHistory 可以再次读取状态值。

好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!

用户评论

把孤独喂饱

终于了解了为什么用hashHistory和browserHistory后页面表现会不同!

    有18位网友表示赞同!

该用户已上天

学习前端历史我一直觉得这两个概念很绕脑,这篇文章解释得真好!

    有16位网友表示赞同!

相知相惜

我之前一直傻傻分不清这两个东西,谢谢这个有用的对比讲解。

    有20位网友表示赞同!

来瓶年的冰泉

做SPA的时候经常用到,这下明白了选择哪种模式的优缺点。

    有11位网友表示赞同!

执拗旧人

用过hashHistory和browserHistory的项目,果然它们在导航上表现不一样啊!

    有18位网友表示赞同!

ヅ她的身影若隐若现

原来还有这种区别啊!看来以后要好好研究下浏览器历史的机制。

    有20位网友表示赞同!

容纳我ii

很实用的一篇文章,对学习react-router非常有帮助!

    有20位网友表示赞同!

作业是老师的私生子

我需要用到这些知识点做一些小项目,这个解释刚好能帮到我。

    有10位网友表示赞同!

有些人,只适合好奇~

原来hashHistory会导致URL栏出现 "#" 符号,这样不太美观啊...

    有7位网友表示赞同!

何年何念

看这篇解释后感觉browserHistory更符合浏览器行为规范,好用!

    有13位网友表示赞同!

寂莫

需要学习这方面知识了,看来以后做单页应用就灵活多了。

    有20位网友表示赞同!

如梦初醒

终于明白了为什么有些网站地址不带#符号,原来是浏览器历史的原因!

    有13位网友表示赞同!

无所谓

这篇文章讲解得很清晰易懂,即使没有前端基础也能看明白。

    有8位网友表示赞同!

冷嘲热讽i

作为一名新手入门者,学习这些非常重要!

    有12位网友表示赞同!

几妆痕

对网页开发很有帮助,特别是对于做单页应用的同学来说。

    有19位网友表示赞同!

余笙南吟

浏览器历史真是个神奇的东西,学起来挺有趣!

    有15位网友表示赞同!

龙吟凤

这个知识点以后可以用到很多场景里去,真棒!

    有18位网友表示赞同!

绳情

分享给我的小伙伴们,他们也在学习前端开发。

    有7位网友表示赞同!

浮世繁华

感谢作者的辛苦付出,让我们更容易理解这些技术概念!

    有13位网友表示赞同!

【深入解析:HashHistory与BrowserHistory的区别及应用场景】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活

上一篇:探秘古典词韵:跟随词牌领略《江城子》之美 下一篇:深入解析:栅格系统在网页设计中的应用与原理