vue-router跳转和跳转传参方法

简介: 使用编程式导航使用 router.push() 方法进行路由跳转,可以在其中传入一个路由对象,也可以传入一个字符串路径:

使用编程式导航


使用 router.push() 方法进行路由跳转,可以在其中传入一个路由对象,也可以传入一个字符串路径:

// 传入路由对象
router.push({ path: '/foo' })
// 传入字符串路径
router.push('/foo')

在路由对象中,可以通过 paramsquery 选项传递参数:

router.push({ path: '/foo', query: { bar: 'baz' } })
router.push({ name: 'foo', params: { id: 123 } })

使用声明式导航


可以在 <router-link> 标签上使用 to 属性实现声明式导航。和编程式导航一样,可以传入一个字符串路径或路由对象,同时也可以通过 paramsquery 选项传递参数:

<!-- 传入字符串路径 -->
<router-link to="/foo">Go to Foo</router-link>
<!-- 传入路由对象 -->
<router-link :to="{ path: '/foo' }">Go to Foo</router-link>
<!-- 传递参数 -->
<router-link :to="{ name: 'foo', params: { id: 123 } }">Go to Foo</router-link>

在组件内使用 $router 和 $route 对象


在 Vue.js 组件中,可以通过 $router 和 $route 对象实现跳转和传参。其中,$router 对象用于导航,而 $route 对象用于提取当前路由的信息,包括参数、查询等。可以通过 $router 对象的 push() 方法进行跳转:

// 在组件内部提取参数
this.$route.params.id
// 在组件内部提取查询参数
this.$route.query.foo
// 跳转到指定路由
this.$router.push('/foo')
this.$router.push({ path: '/foo', query: { bar: 'baz' } })

总之,使用 Vue Router 可以通过编程式导航、声明式导航、组件内部导航等方式实现路由跳转和参数传递。

相关文章
|
小程序
小程序wx.switchTab的跳转传参问题
小程序wx.switchTab的跳转传参问题
177 0
|
2月前
|
JavaScript 网络架构
路由传参及跳转方式
路由传参及跳转方式
|
3月前
|
JavaScript 前端开发
JavaScript 地址信息与页面跳转及跳转传参
JavaScript 地址信息与页面跳转及跳转传参
31 1
|
4月前
|
JavaScript
Vue中给当前页面传递参数并重新加载,vue使用this.$router.push跳转页面,给跳转过去的页面传参不一致时重新加载
Vue中给当前页面传递参数并重新加载,vue使用this.$router.push跳转页面,给跳转过去的页面传参不一致时重新加载
191 0
|
5月前
|
JavaScript 网络架构
vue路由跳转之【编程式导航与传参】
vue路由跳转之【编程式导航与传参】
|
5月前
|
资源调度 JavaScript
vue的跳转传参
vue的跳转传参
29 0
|
6月前
跳转传参的方式
跳转传参的方式
24 0
|
6月前
|
JavaScript
vue路由获取菜单名称和路由跳转传参
vue路由获取菜单名称和路由跳转传参
69 0
|
JavaScript
vue路由跳转传参的方式有哪些
vue路由跳转传参的方式有哪些
|
6月前
Umi路由跳转传参方式都有哪些?
Umi路由跳转传参方式都有哪些
232 0