当前位置:首页 > VUE

vue按钮实现页面跳转

2026-02-23 02:45:18VUE

使用 router-link 实现跳转

在 Vue 中可以通过 router-link 组件实现页面跳转,这是 Vue Router 提供的声明式导航方式。适合在模板中直接使用。

<router-link to="/target-page">
  <button>跳转到目标页</button>
</router-link>

to 属性指定目标路由路径,可以是字符串路径或路由对象。

编程式导航实现跳转

通过 this.$router.push() 方法可以在 JavaScript 代码中实现编程式导航。

<button @click="navigateToPage">跳转到目标页</button>
methods: {
  navigateToPage() {
    this.$router.push('/target-page')
    // 或使用命名路由
    // this.$router.push({ name: 'targetPage' })
  }
}

带参数的跳转

传递参数到目标页面有两种常见方式:

// 通过路径参数
this.$router.push('/user/123')

// 通过查询参数
this.$router.push({
  path: '/user',
  query: { id: 123 }
})

目标页面通过 $route.params.id$route.query.id 获取参数。

替换当前路由

使用 replace 方法不会在 history 中留下记录:

this.$router.replace('/target-page')

在新标签页打开

如果需要在新标签页打开页面,可以使用原生 a 标签:

<a :href="targetUrl" target="_blank">
  <button>新标签页打开</button>
</a>
computed: {
  targetUrl() {
    return `${window.location.origin}/target-page`
  }
}

路由守卫控制跳转

可以通过路由守卫控制跳转逻辑:

router.beforeEach((to, from, next) => {
  if (需要登录 && 未登录) {
    next('/login')
  } else {
    next()
  }
})

动态路由匹配

定义动态路由时,使用冒号标记参数:

const router = new VueRouter({
  routes: [
    { path: '/user/:id', component: User }
  ]
})

跳转时传递参数:

this.$router.push('/user/123')

目标组件通过 this.$route.params.id 获取参数值。

vue按钮实现页面跳转

标签: 跳转按钮
分享给朋友:

相关文章

vue实现前端跳转

vue实现前端跳转

Vue 实现前端跳转的方法 在 Vue 中实现前端跳转通常使用 Vue Router,以下是几种常见的跳转方式: 声明式导航(模板中使用 <router-link>) 在模板中直接使用…

vue实现文字按钮

vue实现文字按钮

Vue 实现文字按钮的方法 在 Vue 中实现文字按钮可以通过多种方式完成,以下是几种常见的方法: 使用原生 HTML 按钮元素 可以通过 <button> 标签结合 CSS 样式实现文…

vue实现购物按钮

vue实现购物按钮

Vue 实现购物车按钮 在 Vue 中实现购物车按钮通常需要结合组件化开发、状态管理和事件处理。以下是实现购物车按钮的常见方法: 创建购物车按钮组件 <template> <…

js实现页面跳转

js实现页面跳转

使用 window.location.href 通过修改 window.location.href 属性实现页面跳转: window.location.href = 'https://example…

h5实现登录页面跳转页面跳转页面

h5实现登录页面跳转页面跳转页面

实现H5登录页面跳转 在H5中实现登录页面跳转可以通过多种方式完成,以下是几种常见方法: 使用window.location.href window.location.href = '目标页面…

h5实现登录页面跳转

h5实现登录页面跳转

实现登录页面跳转的基本方法 使用HTML5和JavaScript实现登录页面跳转,可以通过表单提交或JavaScript事件触发。以下是几种常见方式: 表单提交跳转 在HTML中创建一个表单,通过…