路由模式解析
这里要讲vue-router的路由模式,首先要了解的一点就是路由是由多个URL组成的,使用不同的URL可以相应的导航到不同的位置。如果有进行过服务器开发或者对http协议有所了解就会知道,浏览器中对页面的访问是无状态的,所以我们在切换不同的页面时都会重新进行请求。而实际使用vue和vue-router开发就会明白,在切换页面时是没有重新进行请求也没有重新刷新页面,使用起来就好像页面是有状态的,这是什么原因呢。这其实是借助了浏览器的History API来实现的,这样可以使得页面跳转而不刷新,页面的状态就被维持在浏览器中了。

一、hash模式
使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载,其显示的网路路径中会有 “#” 号,有一点点丑。这是最安全的模式,因为他兼容所有的浏览器和服务器。

二、history模式
美化后的hash模式,会去掉路径中的 “#”。依赖于Html5 的history,pushState API,所以要担心IE9以及一下的版本,感觉不用担心。并且还包括back、forward、go三个方法,对应浏览器的前进,后退,跳转操作。就是浏览器左上角的前进、后退等按钮进行的操作。

history.go(-2);//后退两次
history.go(2);//前进两次
history.back(); //后退
hsitory.forward(); //前进

但是history也是有缺点的,不怕前进后退跳转,就怕刷新(如果后端没有准备的话),因为刷新是实实在在地去请求服务器了。

总结一下
1:hash模式(vue-router默认模式URL后面带#)使用URL的hash值来作为路由,支持所有浏览器 缺点:只能改变#后面的来实现路由跳转。
2:history模式(通过mode: 'history’来改变为history模式)HTML5 (BOM)History API 和服务器配置 缺点:怕刷新如果后端没有处理这个情况的时候前端刷新就是实实在在的请求服务器这样消耗的时间很多还很慢。

三、abstract模式
适用于所有JavaScript环境,例如服务器端使用Node.js。如果没有浏览器API,路由器将自动被强制进入此模式。

然后在

const router = new VueRouter({routes, mode:'hash|history|abstract',})

这里进行切换。

Vue的三种路由模式相关推荐

  1. vue的三种路由守卫

    路由守卫就是当⻚⾯跳转的时候会触发的钩⼦函数, vue⼀共给我们提供了三种路由守卫 全局路由守卫 前置守卫: router.beforeEach((to,from,next) => {}) to ...

  2. vue 的两种路由模式

    第一种 hash 模式 后面带#号 http://xx.xxx.x.xxx:8080/#/index 切换路由,只改变#后面的值,就可以切换路由,不重新刷新页面,浏览器也会记录,左右箭头可以进行前进和 ...

  3. vue的两种路由模式原理

    参考:https://juejin.cn/post/7127143415879303204 react中路由模式分为hash路由和history路由.hash路由的原理是window.onhashch ...

  4. vue.js 三种方式安装(vue-cli)

    Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易于上手 ...

  5. 【CSDN软件工程师能力认证学习精选】vue.js 三种方式安装(vue-cli)

    CSDN软件工程师能力认证(以下简称C系列认证)是由中国软件开发者网CSDN制定并推出的一个能力认证标准.C系列认证历经近一年的实际线下调研.考察.迭代.测试,并梳理出软件工程师开发过程中所需的各项技 ...

  6. VMware虚拟机三种网络模式(桥接、NAT、仅主机)的区别

    由于Linux目前很热门,越来越多的人在学习linux,但是买一台服务放家里来学习,实在是很浪费.那么如何解决这个问题?虚拟机软件是很好的选择,常用的虚拟机软件有vmware workstations ...

  7. Nacos系列:Nacos的三种部署模式

    三种部署模式 Nacos支持三种部署模式 1.单机模式:可用于测试和单机使用,生产环境切忌使用单机模式(满足不了高可用) 2.集群模式:可用于生产环境,确保高可用 3.多集群模式:可用于多数据中心场景 ...

  8. 【Tools】VMware虚拟机三种网络模式详解和操作

    00. 目录 文章目录 00. 目录 01. VMware虚拟机三种网络模式 02. Bridged(桥接模式) 03. NAT(地址转换模式) 04. Host-Only(仅主机模式) 05. 参考 ...

  9. vue.js 三种方式安装--npm安装

    Vue.js是一个构建数据驱动的 web 界面的渐进式框架.     Vue.js 的目标是通过简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易上手,便于与第三方库或既有项目整合.     ...

最新文章

  1. Linux对用户态的动态内存管理
  2. Java API帮助文档怎么查找?
  3. 一次群晖中勒索病毒后的应急响应
  4. 【转】Android BroadcastReceiver介绍
  5. 【项目管理】认识项目相关方(干系人)管理
  6. 用 Go 解析复杂 JSON 的思路
  7. 将uglifyjs添加到鼠标右键菜单
  8. visual studio 2019 未能在命名空间“System.IO.Ports”中找到类型名“SerialPort”
  9. iOS 多参数 ...NS_REQUIRES_NIL_TERMINATION 的写法
  10. Latex: 表格中 自动换行居中
  11. 在Linux-0.11中实现基于内核栈切换的进程切换
  12. 【Antlr】识别常见的词法结构
  13. php tp框架验证,tp5.1验证 - thinkphp5.1框架学习 - php中文网博客
  14. 小刘同学的第一百三十一篇博文
  15. 人文讲座之《阳明心学与今日中国》
  16. 美女SEO系列六:什么是友情链接?
  17. 计算机基础知识文件的复制移动,如何复制文件
  18. 新一代iPad mini曝光:屏幕变大、颜值大幅提升!
  19. python 提示按任意键退出_详解Python实现按任意键继续/退出的功能 python请按任意键继续 什么意思...
  20. 多点触摸:MultiPointTouchArea

热门文章

  1. Unity + Mirror NetworkTransform 从客户端到服务器
  2. DSPTMS320F28335_SCI详解
  3. web开发中,中文乱码问题汇总
  4. 虫师Selenium2+Python_2、测试环境搭建
  5. 不应发送ICMP差错报文的几种情况
  6. AMD的cpu vmware装黑苹果报错:客户机操作系统已禁用 CPU,请关闭或重置虚拟机
  7. PressLight: Learning Max Pressure Control to Coordinate(协调)Traffic Signals in Arterial Network(干线网络)
  8. 苹果录屏精灵_iPhone自带投屏与录屏,3分钟教你操作!
  9. The type initializer for ‘Gdip‘ threw an exception. (centos)
  10. 数据库工程师基础学习1----信息加密技术与逻辑运算