Vue中一共三种路由模式:hash、history和abstract。
1、hash
hash模式即在地址栏中拼接(eg:'www.demo.com/#/index' hash的值为“#/index”),该方式的优点是不会包括在Http请求中,,对后端不会产生影响,改变hash不会重新加载页面,且兼容所有的浏览器和服务器。
2、history
history模式利用了 HTML5 History Interface 中新增的 pushState()和 replaceState()方法。在当前已有的 back、forward、go 的基础之上,它们提供了对历史记录进行修改的功能。只是当它们执行修改时,虽然改变了当前的 URL,但浏览器不会立即向后端发送请求。
3、abstract
适用于所有JavaScript环境,例如服务器端使用Node.js。如果没有浏览器API,路由器将自动被强制进入此模式。
在
const router = new VueRouter({routes, mode:'hash|history|abstract',})
可以进行切换。