通过改变 URL,在不重新请求页面的情况下,更新页面视图。
vue-router通过hash和history两种方式实现路由
- hash模式在浏览器地址栏中会有一个#号分隔根路径和地址,#号后的地址改变时,不会导致浏览器向服务器发起请求,路由跳转时是无刷新的
用window.location.hash读取URL地址数据,监听hashchange事件
- history模式的地址和真实的地址是一样的,会向服务器发起请求,所以history模式需要后端支持
history采用html5的新特性;且提供了两个新方法:pushState(),replaceState()可以对浏览器历史记录栈进行修改,以及popState事件的监听到状态变更