vue-router中Hash与History的区别

344 阅读1分钟

表现形式的区别

原理的区别

  • Hash 模式是基于锚点,以及onhashchange事件

    • URL中 # 后面的内容作为路径地址
    • 监听hashchange 事件
    • 根据当前路由地址找到当前对应组件重新渲染
  • History 模式是基于HTML5中的Histroy API, IE10以后才支持

    • 通过histroy.pustState()、histroy.replaceState() 方法改变地址栏
    • 监听popstate 事件
    • 根据当前路由地址找到对应的组件进行重新渲染