如何指定params参数可传可不传?
项目场景:
项目场景:在搜索栏中不输入任何内容点击搜索。
问题描述
如果设置了params参数却不传递,可能会导致URL地址出错(name参数丢失,这里的name是指routes配置path的命名路由的name),控制台提示以下信息:
] missing param for named route “search”: Expected “keyword” to match “[^/]+?”, but received “”
① params传参行为:
② params不传参行为:
url地址中search已丢失
解决方案:
解决的办法是在配置路由时,在占位的后面加上一个问号即可。示例:
// /search/:keyword? 加上问号,代表该参数可传可不传
{ name: 'search', path: '/search/:keyword?', component: Search, meta: { isShow: true } }