vue-router路由模式有两种,hash和history
我们知道,在我们输入不同URL按下回车键那一刻,开始向服务器请求资源,而我们的单页面的来说,最显著的特点就是在通过更新路由,在不重新请求页面的情况下,来更新试图
1、hash是利用了URL中的hash来实现,URL中会带有#,看着没那么美观;
2、history则是利用了HTML5新增的方法 history.pushState 来完成URL的跳转而无需重新加载页面,URL看起来是更加比较标准的路径;
注意:不过history模式的路由有一个特别的地方,每次重新刷新页面时,可能会请求不到当前的URL(当前URL在服务器根本没有配置,500),这种好看URL需要后端的支持,比如像我的项目中用的多是nginx做代理,需要如下配置:
location / {
try_files $uri $uri/ /index.html;
}
PS:try_files这个配置会在尝试查找后续跟的路径,直到找到其中一项。