Vue 路由模式切换

路由切换模式:{hash/ history}

         对于Vue 这类渐进式前端开发框架,为了构建SPA(单页面应用),需要引入前端路由系统,这也就是Vue-router存在的意义。前端路由的核心,就在于——— 改变视图的同时不会向后端发出请求。

    .  hash(#):默认路由模式

            —— 即地址栏URL中的#符号(此hsah 不是密码学里的散列运算)

           比如这个URL:http://www.abc.com/#/hello, hash 的值为#/hello。它的特点在于:          hash 虽然出现URL中,但不会被包含在HTTP请求中,对后端完全没有影响,因此改变          hash不会重新加载页面。

    .  histroy(/)切换路由模式

              —— 利用了HTML5 History Interface 中新增的pushState() 和replaceState() 方法。(需要特定浏览器支持)

            * history模式,会出现404 的情况,需要后台配置。

 404 错误

          1、hash模式下,仅hash符号之前的内容会被包含在请求中,如 http://www.abc.com, 因此对于后端来说,即使没有做到对路由的全覆盖,也不会返回404错误;

          2、history模式下,前端的url必须和实际向后端发起请求的url 一致,如http://www.abc.com/book/id 。如果后端缺少对/book/id 的路由处理,将返回404错误。 


路由模式切换代码:

export default new Router({

//路由模式:hash(默认),history模式

    mode: 'history',

//修改路由高亮样式,默认值为'router-link-active'

    linkActiveClass: 'active'

//路由规则

    routes:[

        {

            path:'/',

            name:'index',

            component:'Index'

        }

    ],


})

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。