JavaScript

超轻量级php框架startmvc

vue路由跳转传参数的方法

更新时间:2020-08-24 22:24 作者:startmvc
vue中路由跳转传参数有多种,自己常用的是下面的几种通过router-link进行跳转通过编程导航进

vue中路由跳转传参数有多种,自己常用的是下面的几种

  1. 通过router-link进行跳转
  2. 通过编程导航进行路由跳转

 1. router-link


<router-link 
 :to="{
 path: 'yourPath', 
 params: { 
 name: 'name', 
 dataObj: data
 },
 query: {
 name: 'name', 
 dataObj: data
 }
 }">
</router-link>

 1. path -> 是要跳转的路由路径,也可以是路由文件里面配置的 name 值,两者都可以进行路由导航
 2. params -> 是要传送的参数,参数可以直接key:value形式传递
 3. query -> 是通过 url 来传递参数的同样是key:value形式传递

 // 2,3两点皆可传递

2. $router方式跳转


// 组件 a
<template>
 <button @click="sendParams">传递</button>
</template>
<script>
 export default {
 name: '',
 data () {
 return {
 msg: 'test message'
 }
 },
 methods: {
 sendParams () {
 this.$router.push({
 path: 'yourPath', 
 name: '要跳转的路径的 name,在 router 文件夹下的 index.js 文件内找',
 params: { 
 name: 'name', 
 dataObj: this.msg
 }
 /*query: {
 name: 'name', 
 dataObj: this.msg
 }*/
 })
 }
 },
 computed: {

 },
 mounted () {

 }
 }
</script>
<style scoped></style>
----------------------------------------
// 组件b
<template>
 <h3>msg</h3>
</template>
<script>
 export default {
 name: '',
 data () {
 return {
 msg: ''
 }
 },
 methods: {
 getParams () {
 // 取到路由带过来的参数 
 let routerParams = this.$route.params.dataobj
 // 将数据放在当前组件的数据内
 this.msg = routerParams
 }
 },
 watch: {
 // 监测路由变化,只要变化了就调用获取路由参数方法将数据存储本组件即可
 '$route': 'getParams'
 }
 }
</script>
<style scoped></style>

这次项目就遇到了这些问题, 希望能帮助到大家!

以上所述是小编给大家介绍的vue路由跳转传参数的方法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!