type
status
date
slug
summary
tags
category
icon
password
Hash和History模式区别
  • 表现形式的区别
Hash模式的url中带有#号(https://baidu.com/#/play?id=20220530)
History模式(https://baidu.com/play/20220530)
  • 原理的区别
Hash模式是基于锚点,以及onhashchange事件
History模式是基于HTML5中的History API(
history.pushState
history.replaceState
)

VueRouter实现原理

Hash模式
  • URL中#后面的内容作为路径地址
  • 监听hashchange事件
  • 根据当前路径地址找到对应组件重新渲染
History模式
  • 通过history.pushState()方法改变地址栏
  • 监听popstate事件
  • 根据当前路径地址找到对应组件重新渲染
图片预览功能ChatGPT
Loading...