vue:传参的三种方式
- 字符串:
this.$router.push("/search/" + this.keyword + "?k=" + this.keyword.toUpperCase()) - 模板:
/search/${this.keyword}?k=+${this.keyword.toUpperCase()} - 对象:
this.$router.push({name: "search",params: {keyword: this.keyword, }, query: {k: this.keyword.toUpperCase(),},})
注意:
- params参数需要在组件路由配置中添加占位符path: '/search/:keyword',,
- 对象传参需要在组件路由配置中添加name属性name: 'search',
-//keyword?表示此字段可传可不传 path: '/search/:keyword?',
- path不可以和params一起使用,必须使用name配合
-//不可以使空串,使用undefined // params: { keyword: '' || undefined },
- 路由组件props三种写法:
1. 布尔值,只能有params参数:props:true
2. 对象写法:props:{a:1,b:2}
3. 函数写法:props:($route)=>({keyword:$route.params.keyword,k:$route.query.k})
Vue.js 路由传参详解
本文详细介绍了在Vue.js中通过三种方式传递参数:字符串、模板和对象方式。强调了params和query的区别,以及在组件路由配置中的注意事项。同时,还提及了路由组件props的三种设置方式,包括布尔值、对象和函数方法。对于props的接收,文章提到了如何从$route对象中获取参数。
454

被折叠的 条评论
为什么被折叠?



