1、hash模式 2、history模式
区别: 1、hash存在#号,history没有。 2、hsah值变化不会向服务端发起请求,history每次刷新会重新向后端请求整个网址,也就是重新请求服务 器
原理:hash通过监听浏览器的onhashchange()事件变化,hashchange只能改变 # 后面的url片段,不会向服务器发起请求。
history模式: 利用H5的 history中新增的两个API pushState() 和 replaceState() 和一个 事件onpopstate监听URL变化。