当前位置:首页 > VUE

vue实现路由跳转

2026-01-08 15:00:32VUE

Vue 路由跳转的实现方式

在 Vue 中,路由跳转可以通过 vue-router 实现,以下是几种常见的方法:

声明式导航(模板中使用 <router-link>

通过 <router-link> 组件实现跳转,适合在模板中使用:

<router-link to="/home">跳转到首页</router-link>
<router-link :to="{ name: 'user', params: { id: 123 }}">用户页</router-link>

编程式导航(通过 router 实例)

在 JavaScript 代码中调用 router 方法实现跳转:

// 跳转到指定路径
this.$router.push('/home');

// 跳转到命名路由并传递参数
this.$router.push({ name: 'user', params: { id: 123 } });

// 替换当前路由(不保留历史记录)
this.$router.replace('/login');

// 返回上一页
this.$router.go(-1);

路由传参的方式

  1. 路径参数(动态路由)
    在路由配置中定义动态字段:

    vue实现路由跳转

    { path: '/user/:id', component: User }

    跳转时传递参数:

    this.$router.push('/user/123');
  2. 查询参数(query
    通过 URL 查询字符串传参:

    vue实现路由跳转

    this.$router.push({ path: '/search', query: { keyword: 'vue' } });

    目标 URL 会变为 /search?keyword=vue

  3. 命名路由 + params
    通过路由名称和 params 传参:

    this.$router.push({ name: 'profile', params: { userId: 123 } });

路由导航守卫

可以在跳转前后执行逻辑(如权限检查):

router.beforeEach((to, from, next) => {
  if (to.meta.requiresAuth && !isAuthenticated) {
    next('/login');
  } else {
    next();
  }
});

注意事项

  • 使用 params 时需确保路由配置了动态字段(如 :id),否则参数会丢失。
  • query 参数会显示在 URL 中,适合非敏感数据。
  • 编程式导航通常在方法或生命周期钩子中调用。

标签: 跳转路由
分享给朋友:

相关文章

vue实现路由

vue实现路由

Vue 路由的实现方法 Vue 中实现路由通常使用 Vue Router 库。以下是具体的实现步骤: 安装 Vue Router 在项目中通过 npm 或 yarn 安装 Vue Router:…

vue实现路由守卫

vue实现路由守卫

路由守卫的基本概念 路由守卫是Vue Router提供的一种机制,用于在路由跳转前后执行特定的逻辑。它可以用于权限控制、页面访问限制、数据预加载等场景。Vue Router提供了多种路由守卫,包括全局…

vue实现内部跳转

vue实现内部跳转

Vue 实现内部跳转的方法 在 Vue 中实现内部跳转通常涉及路由导航,以下是几种常见方式: 使用 <router-link> 组件 <router-link to="/path"…

vue实现路由动画

vue实现路由动画

路由动画的实现方法 在Vue中实现路由动画通常结合<transition>组件和Vue Router的导航守卫。以下是几种常见实现方式: 基础过渡动画 <template>…

js怎么实现网页跳转

js怎么实现网页跳转

使用 window.location.href 修改 window.location.href 可以直接跳转到新的 URL。这是最常见的方法之一,适用于大多数场景。 window.location.…

vue实现tab路由

vue实现tab路由

Vue 实现 Tab 路由的方法 在 Vue 中实现 Tab 路由通常需要结合 Vue Router 和动态组件或条件渲染。以下是几种常见方法: 使用 Vue Router 动态路由 配置路由文件…