当前位置: 首页 > Web前端 > vue.js

vue-routerquery和params传参(接收参数)router和route的区别

时间:2023-03-31 15:31:02 vue.js

今天做项目的时候踩到了vue-router传参的坑(query和params),所以决定总结一下区别两者之间。直接总结干货!!!1.查询方式的传递和接收参数:this.$router.push({path:'/xxx',query:{id:id}})接收参数:this.$route.query.id注意:传递的参数是this.$router,接收参数是this.$route,所以这里一定要看清楚!!!这有什么区别。和路线?在控制台打印两者可以明显看出两者的一些区别:1.是一个实例,如果要导航到不同的,使用router.push方法2.$route是当前router的跳转对象,可以获取里面的name,path,query,params等。2.Params传递和接收参数的方式:this.$router.push({name:'xxx',params:{id:id}})接收参数:this.$route。params.id注意:params传参,push只能是name:'xxxx',不能是path:'/xxx',因为params只能用name来导入路由,这里如果写成path,接收参数页面将是不确定的!!!此外,两者之间还存在一些差异。说白了query就相当于一个get请求。页面跳转时,可以在地址栏看到请求参数,而params相当于一个post请求,地址栏不会显示参数。