vue-router是通过hash和history两种方式实现前端路由,更新视图但不重新请求页面”是前端路由原理的核心之一
下面分别来说一下这两种方式
hash
hash是什么?直白一点说,就是路由后面加一个 ’ # ‘ 及其后面的内容
hash指不会包含在HTTP请求中,即:hash值不会带给服务器
hash模式优缺点:
路由总是带#号,不美观
若以后将地址通过第三方手机app分享,若app校验严格,则地址就会被记作不合格
兼容性较好
history
history模式就是路由里不带#,后面直接跟着的是地址
history的优缺点:
地址干净,美观
兼容性没有hash模式好
应用部署上线时需要后端人员给支持,解决刷新页面服务器404问题
一般情况下,vue-router默认使用的hash模式,当然我们可以选择使用哪种模式
只需要在router下的index.js文件中设置以下代码即可
const router = new VueRouter({
routes,
// mode:"history",
// mode:'hash'
})