精解vue中$router 和$route

精解vue中$router 和$route




在这里插入图片描述

this.$router.push(’/路径/’)进行跳转路由
push只是其中一个属性,这里就不再一一介绍

this.$route可以拿到我们传递的参数和动态路由id
params
query



我们可以先把这二者关系通俗的理解为:

router是我们当前配置的所有路由,route是处于活跃状态的其中一个路由

this.$router

  • 我们在配置过程中所有的路由都存放在router对象中
  • 通过this.$router.push('/路径/'),可以让我们进行路由的跳转, 并向history栈中添加此路由
  • 这里的router对象本质就是VueRouter实例

在这里插入图片描述



this.$route

通俗的理解是当前哪一个路由处于活跃状态,取出的就是哪一个路由

传递参数的方式

当我们在进行路由的跳转时,可能会想要传递一些参数,vue官方也给出了两种方式

  • params
  • query


params

首先我们需要清楚一个概念,它们的本质是什么,这里我们引入一个概念:动态路由

我们一般是一个组件写一个路由,但当我们处理用户界面时,路由往往是不确定的,所以我们希望路由的传递可以有一个动态的改变,比如以下路径:后面是大量用户的ID

/user/mary

/user/kris

我们来实现一下,不用vue里的 <router-link</router-link

我们在router文件下的index.js中先进行配置

在这里插入图片描述
在这里插入图片描述

配置好以后我们需要去APP.vue中写一个传递参数的方法

通过拼接字符串的方法,这时我们点击用户按钮,执行btnUser方法,跳转路由到用户界面

在这里插入图片描述

但此时我们还没有配置用户界面,我们来给他进行渲染

在这里插入图片描述

这里就要用到this.$route,用户界面的路由是当前最为活跃的路由(正在被使用),我们就可以拿到userId这个参数

在这里插入图片描述



query

路由配置格式:正常配置

router/index.js

在这里插入图片描述
在这里插入图片描述

App.vue中写入js方法

在这里插入图片描述

Profile.vue获取传递的对象并渲染

在这里插入图片描述

在这里插入图片描述

  • 20
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 29
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 29
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

请对长亭晚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值