HTML5 History模式,vue路由去除#

vue

参考来源:jigsaw

vue-router 默认 hash 模式 —— 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载。

项目后期需要去除#,则可以采用history模式,这种模式利用 history.pushState API 来完成 URL 跳转且无须重新加载页面。

不过这种模式还需要后台配置支持。因为我们的应用是个单页客户端应用,如果后台没有正确的配置,当用户在浏览器直接访问 https://unnue.com/article/404 就会返回 404,这就不好看了。

所以呢,你要在服务端增加一个覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,则应该返回同一个 index.html 页面,这个页面就是你 app 依赖的页面。

当匹配不到静态资源,前端路由也匹配不到组件时候,应该在路由配置(rooter.js)的最后设置一个路由匹配规则,放在最后是因为*会匹配任何的路径,我们可以使用优先级原则将写在前面的路由规则优先匹配,如果前面的找不到,才会找最后的404组件。

以上是 HTML5 History模式,vue路由去除# 的全部内容, 来源链接: utcz.com/z/378256.html

回到顶部