hash路由:
//获取当前hash路径
location.hash
//监听路径的切换
window.onhashchange=()=>{
}
history路由:
//获取当前history路径
history.pushState
//监听路径的切换
window.onpopstate=()=>{
}
不同的路由模式会根据不同的方法来获取当前路径和监听路径的切换。
原理就是: 监听一个window.onhashchange/window.onpopstate这样一个BOM方法,BOM方法是浏览器自带的,浏览器提供的。这个DOM方法能监听路径的改变。
这个事件每次路径改变都会触发,从而实现了监听。
图示:
每次路径改变,触发这个事件,打印“111”和获取当前的路径