看了Vue Router官方文档感觉没理解清楚
我就记录一下我常用的路由方式传参
1、params传参 这种方式不会在url中暴露参数属性
父级组件
<router-link active-class="active" tag="li" :to="{name:'test',params:{name:'lynn',like:'水果'}}">影院</router-link>
路由
{
path:'/test',
name:'test',
component:Test,
// props: true, // 直接写这个也可以
// 下面这个像是一种代码规范记录路由传参,我用的ts,如果是js的朋友把:any去掉就行(笑死我了 anyScript)
props : (route:any) => ({
name : route.query.name,
age : route.query.age
})
}
路由页面
<template>
<div>test</div>
<div>{{name}}</div>
</template>
<script lang="ts">
import {defineComponent} from 'vue'
export default defineComponent({
name:'test',
props:['name','like'],
// ref可以接收props里的值
setup(ref){
console.log(ref);
}
})
</script>
2、query传参 暴露url属性
把第一种方法里的params改成query即可