一、hash模式
默认模式就是hash模式
原理:window.onhashchange事件
并非真实页面地址,而是以参数形式传给单页面文件,只需要保证index.html这个文件路径真实就可以了
二、history模式
new Router({
mode: 'history',
routes: []
})
原理:window.history.pushState完成URL跳转,这种模式需要后端支持,因为如http://xxx/自定义路径在单页面应用中是没有的
后端支持方式一:
服务器需要增加所有情况的候选资源,让它们都返回同一个index.html文件
后端支持方式二:
在服务器上加一个简单的回退路由,如果URL不匹配任何静态资源,就提供index.html文件