vue基础之路由
1:路由传递参数(对象写法)path是否可以结合params参数一起使用?
不可以。不能这样书写,前端控制台会报错,程序会崩掉
2:如何指定params参数可传可不传?
如果路由中配置了占位符,例如:path:'/search/:keyWord,但是如果不传params参数,只传query,URL会有问题,如:正常情况URL:#/search?k=QWE,不传params的URL:#/?k=QWE,search没了;解决:在配置路由时,在最后面加个?,如:path:'/search/:keyWord?(?在正则中代表0或1次),URL回复正常:#/search?k=QWE
3:params参数可以传递也可以不传递,如果指定name与params配置, 但是如果传递是空串,如何解决?
params中数据是一个"", 无法跳转,路径会出问题,URL也会出现search没了:#/?k=ADD;解决方式:params:{keyWord:''||undefined},URL回复正常:#/search?k=ADD
5: 路由组件能不能传递props数据?
可以。3种写法:
// 布尔值写法:只能用params // props:true // 对象写法,额外(写死)给路由组件传递参数 // props:{keyWord:1,k:2} // 函数写法,简写时需要加个括号 // props:($route)=>({key:$route.params.keyWord,k:$route.query.k}) props:($route)=>{ return {key:$route.params.keyWord,k:$route.query.k} }

浙公网安备 33010602011771号