美文网首页
vue-router中$route 和 $router

vue-router中$route 和 $router

作者: 黄黄黄大帅 | 来源:发表于2020-08-04 09:07 被阅读0次

$route

route是路由信息对象,里面主要包含路由的一些基本信息,包括name、meta、path、hash、query、params、fullPath、matched、redirectedFrom,即$router会被注入每个组件中,可以利用它进行一些信息的获取。

router.beforeEach((to, from, next) => {
  // to 和 from 都是 路由信息对象
})
watch: {
  $route(to, from) {
     // to 和 from 都是 路由信息对象
  }
}

$router

router是VueRouter的实例,可以通过 $router 访问路由实例,包含了一些路由的跳转方法,钩子函数等

const router = new Router({
  routes: [
    {
      path: "/",
      name: "首页",
      redirect: '/home'
    },
    {
      path: '/login',
      name: 'Login',
      component: Login
    },
    { path: '*', component: NotFoundComponent }
  ],
  linkActiveClass: "active-router",
  linkExactActiveClass: "exact-router"
})

// 全局注册的路由
Vue.use(VueRouter)

// 字符串
      this.$router.push('home')
// 对象
      this.$router.push({ path: 'home' })
// 命名的路由
      this.$router.push({ name: 'user', params: { userId: 123 }})
// 带查询参数,变成 /register?plan=123
      this.$router.push({ path: 'register', query: { plan: '123' }})

相关文章

网友评论

      本文标题:vue-router中$route 和 $router

      本文链接:https://www.haomeiwen.com/subject/pzvjrktx.html