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


Posted in Javascript onJanuary 11, 2018

一、如何去除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,且后台对访问地址有严格校验,不建议使用此种模式。若是内容有错误或遗漏,欢迎大家批评指正~

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

Javascript 相关文章推荐
表单提交验证类
Jul 14 Javascript
二行代码解决全部网页木马
Mar 28 Javascript
js生成的验证码的实现与技术分析
Sep 17 Javascript
js的toUpperCase方法用法实例
Jan 27 Javascript
jquery实现的缩略图预览滑块实例
Jun 25 Javascript
EsLint入门学习教程
Feb 17 Javascript
JS去掉字符串前后空格、阻止表单提交的实现代码
Jun 08 Javascript
label+input实现按钮开关切换效果的实例
Aug 16 Javascript
浅谈Vuex@2.3.0 中的 state 支持函数申明
Nov 22 Javascript
详解react内联样式使用webpack将px转rem
Sep 13 Javascript
Nuxt.js开启SSR渲染的教程详解
Nov 30 Javascript
浅谈Vue.set实际上是什么
Oct 17 Javascript
全新打包工具parcel零配置vue开发脚手架
Jan 11 #Javascript
详解VUE2.X过滤器的使用方法
Jan 11 #Javascript
Vuex提升学习篇
Jan 11 #Javascript
浅谈Node.js爬虫之网页请求模块
Jan 11 #Javascript
VueAwesomeSwiper在VUE中的使用以及遇到的一些问题
Jan 11 #Javascript
angular2中Http请求原理与用法详解
Jan 11 #Javascript
基于node下的http小爬虫的示例代码
Jan 11 #Javascript
You might like
ip签名探针
2006/10/09 PHP
php数组转换js数组操作及json_encode的用法详解
2013/10/26 PHP
一个简单的PHP验证码实现代码
2014/05/10 PHP
mac下Apache + MySql + PHP搭建网站开发环境
2014/06/02 PHP
Jquery 最近浏览过的商品的功能实现代码
2010/05/14 Javascript
使用JQuery和CSS模拟超链接的用户单击事件的实现代码
2012/05/23 Javascript
解决html按钮切换绑定不同函数后点击时执行多次函数问题
2014/05/14 Javascript
JavaScript仿静态分页实现方法
2015/08/04 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
JS+CSS实现简单滑动门(滑动菜单)效果
2015/09/19 Javascript
实现非常简单的js双向数据绑定
2015/11/06 Javascript
JavaScript使用DeviceOne开发实战(三)仿微信应用
2015/12/02 Javascript
javascript生成img标签的3种实现方法(对象、方法、html)
2015/12/25 Javascript
js实现点击展开隐藏效果(实例代码)
2018/09/28 Javascript
JavaScript解析及序列化JSON的方法实例分析
2019/01/04 Javascript
使用jQuery实现购物车
2020/10/29 jQuery
解决vant框架做H5时踩过的坑(下拉刷新、上拉加载等)
2020/11/11 Javascript
[02:57]DOTA2亚洲邀请赛 SECRET战队出场宣传片
2015/02/07 DOTA
python中self原理实例分析
2015/04/30 Python
Python for Informatics 第11章之正则表达式(二)
2016/04/21 Python
python解决网站的反爬虫策略总结
2016/10/26 Python
numpy中索引和切片详解
2017/12/15 Python
python3实现域名查询和whois查询功能
2018/06/21 Python
详解python中的装饰器
2018/07/10 Python
使用Python开发SQLite代理服务器的方法
2018/12/07 Python
python opencv 简单阈值算法的实现
2019/08/04 Python
python GUI库图形界面开发之PyQt5 UI主线程与耗时线程分离详细方法实例
2020/02/26 Python
Python tcp传输代码实例解析
2020/03/18 Python
在C语言中实现抽象数据类型什么方法最好
2014/06/26 面试题
《美丽的田园》教学反思
2014/03/01 职场文书
幼儿园中班区域活动总结
2014/07/09 职场文书
活动总结书怎么写
2015/05/11 职场文书
企业党建工作总结2015
2015/05/26 职场文书
挂职锻炼工作总结2015
2015/05/28 职场文书
《梅花魂》教学反思
2016/02/18 职场文书
Python实现简单得递归下降Parser
2022/05/02 Python