首页常见问题正文

$route和$router的区别是什么?

更新时间:2023-03-22 来源:黑马程序员 浏览量:

IT培训班

  在Vue.js中,$route和$router都是与路由相关的对象,但它们的作用略有不同。

  $router是Vue Router实例,它提供了许多方法和属性来管理应用程序的路由,例如动态路由添加,路由切换,导航等等。

1679449570059_$route和$router的区别是什么.jpg

  而$route是当前活动路由的对象,它包含了当前URL解析得到的信息,如当前路由的名称、路径、参数、查询参数等等。

  下面是一个简单的Vue组件示例,演示了$route和$router的使用:

<template>
  <div>
    <h1>当前路由信息</h1>
    <p>名称: {{ $route.name }}</p>
    <p>路径: {{ $route.path }}</p>
    <p>参数: {{ $route.params }}</p>
    <p>查询参数: {{ $route.query }}</p>
    <h1>导航</h1>
    <ul>
      <li><router-link :to="{ name: 'home' }">Home</router-link></li>
      <li><router-link :to="{ name: 'about' }">About</router-link></li>
    </ul>
  </div>
</template>

<script>
export default {
  name: 'App',
  mounted() {
    console.log(this.$router) // 打印 $router 对象
    console.log(this.$route) // 打印 $route 对象
  },
}
</script>

  在上述示例中,我们通过$router对象提供的router-link组件来进行页面间的导航,而通过$route对象来展示当前路由的信息。

分享到:
在线咨询 我要报名
和我们在线交谈!