Vue 之 路由常用的几种传参方式

Posted Zhuangvi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue 之 路由常用的几种传参方式相关的知识,希望对你有一定的参考价值。

Vue 之 路由常用的几种传参方式

第一种方式

必须在路由的path上配置相关参数

路由配置(必须):

{ path: '/details/:id', name: 'Details', component: Details }

传参

toDetails(id){
	this.$router.push({ path: `/details/${id}` })
}

获取参数

mounted() {
	let id = this.$route.params.id
}

注:传递的参数显示在地址栏上.

第二种方式

不需要路由有其他额外的配置

路由配置:

{ path: '/details', name: 'Details', component: Details }

传参

toDetails(id){
	this.$router.push({ 
		name: `Details` // 这里使用的是路由配置里面的name值
		params: {
			id: id
		}
	})
}

获取参数

mounted() {
	let id = this.$route.params.id
}

注:传递的参数不显示在地址栏上,刷新页面数据会丢失.

第三种方式

不需要路由有其他额外的配置

路由配置:

{ path: '/details', name: 'Details', component: Details }

传参

toDetails(id){
	this.$router.push({ 
		path: `/details`
		query: {
			id: id
		}
	})
}

获取参数

mounted() {
	let id = this.$route.query.id
}

注:传递的参数会显示在地址栏上,中文会进行相应的转码.

以上是关于Vue 之 路由常用的几种传参方式的主要内容,如果未能解决你的问题,请参考以下文章

vue三种传参方法

路由传参的三种方法

vue路由两种传参的区别

vue 路由跳转,路由传参的几种方式

(尚043) vue_向路由组件传递数据+vue param和query两种传参方式

vue-router路由传参的几种方式-案例