2. hash、history区别
leezozz 1/8/2023 vue-router
# 表现形式:
- Hash模式: https://music.163.com/#/playlist?id=123
- History模式:【调用此模式需要服务端配置支持】 https://music.163.com/playlist/123
# 原理区别:
- Hash模式是基于描点,以及onhashchange事件
- History模式是基于HTML5中的History API
- history.pushState() 【IE10以后才支持】
- history.replaceState()
- history.push() 当路径改变,会向服务端发送请求
- history.pushState() 当路径改变,只会改变url,向history记录栈中保存记录
- History需要服务器的支持
- 单页应用中,服务端不存在http://www.testurl.com/login这样的地址会返回找不到该页面
- 在服务端应该除了静态资源外都返回单页应用的index.html