如何去除vue项目中的#及其ie9兼容性

转载  更新时间:2018年01月11日 15:43:55   作者:深海鱼veritas   我要评论

本篇文章主要介绍了如何去除vue项目中的#及其ie9兼容性,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

一、如何去除vue项目中访问地址的#

vue2中在路由配置中添加mode(vue-cli创建的项目在src/router/index.js)

export default new Router({
 mode: 'history',
 routes: [
  {
   path: '/',
   name: 'menu',
   component: menu,
   children: [
    {
     path: 'organization',
     component: organization,
     children: [
      {
       path: '',
       redirect: 'organizationSub'
      },
      {
       path: 'organizationSub',
       component: organizationSub
      }
     ]
    },
    {
     path: 'user',
     component: user
    },
    {
     path: 'role',
     component: role
    }
   ]
  }
 ]
})

二、vue路由原理

2.1  hash模式:vue-router默认的路由模式。

vue开发的单页面应用,html只有一个,切换时url的变化通过url的hash模式模拟完整的url。

2.2  history模式:vue2中配置 mode: 'history'。

利用history.pushState API完成url的跳转

HTML5 History 模式官网介绍:https://router.vuejs.org/zh-cn/essentials/history-mode.html

三、注意事项

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

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

vue-router官网中有介绍,也有后台配置样例:https://router.vuejs.org/zh-cn/essentials/history-mode.html

四、兼容性

经过测试,mode: 'history'在ie9下不生效,若vue项目需要兼容ie9,且后台对访问地址有严格校验,不建议使用此种模式。若是内容有错误或遗漏,欢迎大家批评指正~

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 详解Nuxt.js Vue服务端渲染摸索

    详解Nuxt.js Vue服务端渲染摸索

    本篇文章主要介绍了详解Nuxt.js Vue服务端渲染摸索,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • VueJs路由跳转——vue-router的使用详解

    VueJs路由跳转——vue-router的使用详解

    本篇文章主要介绍了VueJs路由跳转——vue-router的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • 详解Vue.js 2.0 如何使用axios

    详解Vue.js 2.0 如何使用axios

    本篇文章主要介绍了Vue.js 2.0 如何使用axios,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • 详解vue数据渲染出现闪烁问题

    详解vue数据渲染出现闪烁问题

    本篇文章主要介绍了vue数据渲染出现闪烁问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • vue组件实现可搜索下拉框扩展

    vue组件实现可搜索下拉框扩展

    这篇文章主要为大家详细介绍了vue组件实现可搜索下拉框的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • VUE长按事件需求详解

    VUE长按事件需求详解

    这篇文章主要为大家详细介绍了为大家详细几种长按事件的需求,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • vue路由嵌套的SPA实现步骤

    vue路由嵌套的SPA实现步骤

    这篇文章主要为大家详细介绍了vue路由嵌套的SPA实现步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • 详解如何去除vue项目中的#——History模式

    详解如何去除vue项目中的#——History模式

    这篇文章主要介绍了详解如何去除vue项目中的#——History模式 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • vue.js  父向子组件传参的实例代码

    vue.js 父向子组件传参的实例代码

    这篇文章主要介绍了vue.js 父向子组件传参的实例代码,需要的朋友可以参考下
    2017-10-10
  • 深入理解vue.js双向绑定的实现原理

    深入理解vue.js双向绑定的实现原理

    vue.js是MVVM结构的,同类的还有AngularJs;至于MVC、MVP、MVVM的比较网上已经有很多了,这样不再重复。这篇文章将给大家深入的介绍vue.js双向绑定的实现原理,有需要的朋友们可以参考借鉴,下面跟着小编一起来看看吧。
    2016-12-12

最新评论