路由传参常用的三种方法:
**query传参:(**体现在URL上,页面刷新数据不会丢失,params的name属性传参同样适用于query)
传:this.$router.push("路径/?参数名=参数值")
例:简单:this.$router.push("/about/?id=123")
对象:this.$router.push(path: '/about',query:{id: 456,name: 'hong'})
接:this.$route.query.参数名
例:this.$route.query.id
**params传参:**(页面刷新数据丢失,通过路由属性中的name来确定匹配的路由,通过params(同样适用于query)来传递参数)
传:this.$router.push({name:name值,params:{参数名:参数值}})
例:this.$router.push({ name: 'About',params:{id: 888}})
接:this.$route.params.参数名
例:this.$route.params.id
**动态路由匹配:**(页面刷新数据不会丢失,需要在route文件的path中添加 (/:参数名) 来对应 $router.push 中path携带的(参数值))
传:this.$router.push({path:'路径'+(/参数值)})
例:this.$router.push({path:`/home/${999}`)
接:this.$route.params.参数名
例:this.$route.params.id