1、Hash模式和History模式的区别
2、Vue Router 实现原理
VueRouter是前端路由,当路径切换当时候,在浏览器端判断当前路径,并加载当前路径对应的组件
Hash模式是将URL#后面的内容做为路由地址,可以直接通过locastion.url来切换浏览器中的地
址,如果只改变了#号后面的内容,浏览器不会向服务器请求这个地址,但是会把这个地址记录到浏
览器的访问历史中,当Hash改变后,需监听Hash当变化,并做相应处理。只需要监听hashchange
这个事件,在这个事件中记录当前当路由地址,并找到该路径对应当组件,并重新渲染。
History模式的路径就是一个普通的url,通过pushState()方法改变地址栏,这个方法仅仅是
改变地址栏,并把当前地址保存在访问历史中,并不会真正的跳转到指定路径,也就是浏览器不会
向服务器发送请求。
核心代码