前端路由原理
2021/10/1 23:41:09
本文主要是介绍前端路由原理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前端路由,url的匹配处理在前端页面进行,而不向后端请求。在页面不刷新的情况下,更改页面内容的手段。
首先url更改时,页面不能刷新,不然肯定会向服务器发送请求。这里就有两个基础的方法可以做到,window.location和window.history
1. window.location
location.href:完整的网址
location.hash: hash值虽然出现在url中,但不会被包含在http请求中,是 URL 中 hash (#) 及后面的那部分,常用作锚点在页面内进行导航,因此改变hash值不会重新加载页面
location.replace(url):不会将新的url添加到浏览器访问历史中,而是替换掉当前的url
每次改变location.hash值,都会在浏览器访问历史中增加一个记录
可以通过hashchange事件来监听hash值的变化
2. window.history
history.go(),history.back()
通过浏览器前进后退改变 URL 时 ,将触发popstate事件。
history.pushState 修改当前url,会再浏览器访问历史中增加一个记录
history.replaceState 替换当前url,不会增加浏览器访问历史记录
调用history.pushState()或history.replaceState()修改url时不会触发popstate事件,浏览器不会刷新页面
history模式和hash模式除了监听的事件不同,改变url的方式不同,之后的处理是一样的
这篇关于前端路由原理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Vite多环境配置学习:新手入门教程
- 2024-11-23实现OSS直传,前端怎么实现?-icode9专业技术文章分享
- 2024-11-22在 HTML 中怎么实现当鼠标光标悬停在按钮上时显示提示文案?-icode9专业技术文章分享
- 2024-11-22html 自带属性有哪些?-icode9专业技术文章分享
- 2024-11-21Sass教程:新手入门及初级技巧
- 2024-11-21Sass学习:初学者必备的简单教程
- 2024-11-21Elmentplus入门:新手必看指南
- 2024-11-21Sass入门:初学者的简单教程
- 2024-11-21前端页面设计教程:新手入门指南
- 2024-11-21Elmentplus教程:初学者必备指南