微信小程序demo_怎么去除vue项目中的#及其ie9兼容性

如何去除vue项目中的#及其ie9兼容性       本篇文章主要介绍了如何去除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 模式官网介绍:

三、注意事项

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

< 页面,这个页面就是你 app 依赖的页面。

vue-router官网中有介绍,也有后台配置样例:

四、兼容性

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

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


相关阅读