vivatoviva / Interview-Frontend-2020

欢迎star、在对应的ussues沉淀知识
17 stars 2 forks source link

前端路由控制原理 #21

Open vivatoviva opened 5 years ago

vivatoviva commented 5 years ago

前端路由是现代单页应用的基础,目前有两种实现思路:

  1. 基于hash的实现方式
  2. 基于H5 history的实现方式

基于HASH的实现方式

hash路由是一个带有# 的路由,我们主要是监听url中的hash变化来进行路由跳转。

监听事件:loadhashchange

优点缺点

优点是兼容性良好,缺点是URL中一直存在#,使得url不美观

基于H5 history实现方式

我们可以直接使用window.history中方法,,里面有几个方法可以实现变更url但是不刷新路由,具体的API可以参考MDN