初识\(router和\)route

一、前言

​ vue框架中单页面富应用可以说是其最大的优点功能之一了,应用起来简单直观,说起单页面富应用那就必须得联想到\(router**,但是在项目开发过程中我们还会遇到另一个和它长得很像的东西,那就是**\)route,两者就仅仅相差一个字母,但是它们之间的功能却有着天大的区别,下面我们来看看它们各自的作用和都有哪些不同吧!

二、单页面Web应用(SPA)

​ 首先,我们要想了解vue-router,那就得先了解什么是SPA,单页Web应用(single page web application,SPA),就是只有一张Web页面的应用,是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序,即,在我们的单页面应用中是不存在页面的跳转的,它只是以某种方式将我们页面内的内容替换掉而已,如:我们从首页跳转到用户页,这个过程并非是真正地执行了的页面的跳转,其实他还是那个最开始的那个页面,通俗说,在我们的vue框架中就只有一个HTML文件。而替换到和更新到所需页面(组件),就可以通过使用vue-router中的\(router和\)route来实现。

三、两者的区别

  1. router

    • router翻译为“路由”,应用于计算机网络中,路由是把信息从源穿过网络传递到目的的行为,经历了哪些网络节点。在单页应用中,它表示页面的更新过程中所经历的路径变化。

    • $router对象是全局路由的实例,是router构造方法的实例,我们可以在任何组件中通过使用ths来引用它。

  2. route

    • $route对象表示当前的路由信息,包含了当前 URL 解析得到的信息。包含当前的路径,参数,query对象等。

四、两者的对象属性和方法

$router

  1. push( push方法其实和是等同的)

    • 字符串this.$router.push('home')
    • 对象this.$router.push({path:'home'})
    • 命名的路由this.$router.push({name:'user',params:{userId:123}})
    • 带查询参数,变成 /register?plan=123this.$router.push({path:'register',query:{plan:'123'}})
  2. go
    • 前进或者后退this.$router.go(number) ,number为正数时表示前进,为负数时表示后退
  3. replace
    • push方法会向 history 栈添加一个新的记录,而replace方法是替换当前的页面,不会向 history 栈添加一个新的记录,即使用replace方法时,不能返回到上一个页面。
  4. 通过控制台了解更多

$route

  1. $route.path 字符串,对应当前路由的路径,总是解析为绝对路径,如"/foo/bar"。
  2. $route.params 一个 key/value 对象,包含了 动态片段 和 全匹配片段, 如果没有路由参数,就是一个空对象。
  3. **\(route.query** 一个 key/value 对象,表示 URL 查询参数。 例如,对于路径 /foo?user=1,则有\)route.query.user == 1, 如果没有查询参数,则是个空对象。
  4. $route.hash 当前路由的hash值 (不带#) ,如果没有 hash 值,则为空字符串。锚点*
  5. $route.fullPath 完成解析后的 URL,包含查询参数和hash的完整路径。
  6. $route.matched 数组,包含当前匹配的路径中所包含的所有片段所对应的配置参数对象。
  7. $route.name 当前路径名字
  8. $route.meta 路由元信息
  9. 控制台了解更多

初识$router和$route的更多相关文章

  1. 理解OpenShift(1):网络之 Router 和 Route

    理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4) ...

  2. 【react router路由】<Router> <Siwtch> <Route>标签

    博客 https://www.jianshu.com/p/ed5e56994f13?from=timeline 文档 http://react-guide.github.io/react-router ...

  3. vue中的router和route有什么区别?

    我只知道前者一般用在跳转路由的时候,push一个url, 而后者则用来存储路由跳转过程中存储的各种数据. 话不多说,这篇博客讲的比较详细,可以参考一下. vue2.0中的$router 和 $rout ...

  4. Vue中美元$符号的意思与vue2.0中的$router 和 $route的区别

    vue的实例属性和方法 除了数据属性,Vue 实例还暴露了一些有用的实例属性与方法.它们都有前缀 $,以便与用户定义的属性区分开来.例如: var data = { a: 1 } var vm = n ...

  5. 浅谈vue$router 和 $route的区别

    最近在学习vue的单页面应用开发,需要vue全家桶,其中用到了VueRouter,在路由的设置和跳转中遇到了两个对象$router 和 $route ,有些傻傻分不清,后来自己结合网上的博客和自己本地 ...

  6. $router和$route的区别,路由跳转方式name 、 path 和传参方式params 、query的区别

    一.$router和$route的区别 $router : 是路由操作对象,只写对象$route : 路由信息对象,只读对象 例子://$router操作 路由跳转 this.$router.push ...

  7. vue中的$router 和 $route的区别

    最近在学习vue的单页面应用开发,需要vue全家桶,其中用到了VueRouter,在路由的设置和跳转中遇到了两个对象$router 和 $route ,有些傻傻分不清,后来自己结合网上的博客和自己本地 ...

  8. 【面试题】Vue中的$router 和 $route的区别

    Vue中的$router 和 $route的区别 点击视频讲解更加详细 this.$route:当前激活的路由的信息对象.每个对象都是局部的,可以获取当前路由的 path, name, params, ...

  9. [Angular2 Router] CanActivate Route Guard - An Example of An Asynchronous Route Guard

    In this tutorial we are going to learn how we can to configure an can activate route guard in the An ...

随机推荐

  1. Solution Set - Stirling 数相关杂题

      <好多题的题解>   「洛谷 P5408」第一类斯特林数·行   根据结论 \[x^{\overline{n}}=\sum_i{n\brack i}x^i, \] 我们只需要求出 \( ...

  2. AI 神经网络学习

    神经网络学习 1.输出与输入的关系(感知基): $$ y=\begin{Bmatrix} 1 & {\overrightarrow{x}\cdot \overrightarrow{w}+b&g ...

  3. Python基础(Day1)

    一.Python的简介  1.Python的诞生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发 ...

  4. MyBatis功能点一:二级缓存cache

    对于Mybatis缓存分作用域等维度区别一.二级缓存特点如下图: 分析缓存源码首先得找到缓存操作的入口:前面已经分析,sqlsesion.close()仅对一级缓存有影响,而update等对一/二级缓 ...

  5. 科普IIS是什么?IIS介绍!

    1.Microsoft IIS 是允许在公共Intranet或Internet上发布信息的Web服务器.Internet Information Server通过运用超文本传输协议(HTTP)传输信息 ...

  6. spring IOC的理解,原理与底层实现?

    从总体到局部 总 控制反转:理论思想,原来的对象是由使用者来进行控制,有了spring之后,可以把整个对象交给spring来帮我们进行管理                DI(依赖注入):把对应的属性 ...

  7. centos安装k8s集群

     准备工作 关闭swap,注释swap分区 swapoff -a 配置内核参数,将桥接的IPv4流量传递到iptables的链 cat > /etc/sysctl.d/k8s.conf < ...

  8. awvas启动不起来解决方案

    当双击桌面的"Acunetix图标",自动打开浏览器跳转页面,结果页面显示"无法访问此网站"按Windows+R键输入services.msc打开服务界面查看A ...

  9. m0n0wall安装教程

    m0n0wall的镜像链接:https://pan.baidu.com/s/1soIw7cS1Tv180fbo2655UA 提取码:dpon 一.新建虚拟机 新建虚拟机我想大家都会,详细步骤我就不陈述 ...

  10. [题解]Mail.Ru Cup 2018 Round 1 - A. Elevator or Stairs?

    [题目] A. Elevator or Stairs? [描述] Masha要从第x层楼去第y层楼找Egor,可以选择爬楼梯或者坐直升电梯.已知爬楼梯每层需要时间t1:坐直升电梯每层需要时间t2,直升 ...