我正在尝试使用此语法按照此处接受的答案使用queryParams
进行导航:Sending data with route.navigate in Angular 2
this.router.navigate(['add', { queryParams: { type: $event.value } }], { relativeTo: this.route });
然而不是:
.../add?type=someEventValue
这导致可选参数(又名矩阵表示法)
.../add;queryParams=%5Bobject%20Object%5D
我做错了什么?有没有办法在Angular 4.3.x路由器中强制执行旧式搜索参数?
答案 0 :(得分:0)
如果您向根路线添加可选参数,您将获得?param=value
,如果将其添加到子路线,您将获得;param=value
。
Angular需要这个来区分哪些路径参数属于。
答案 1 :(得分:0)
queryParams对象应该是调用navigate
函数时传递的第二个参数的一部分。
您应该执行以下操作:
this.router.navigate(['add'], { queryParams: { type: $event.value }, relativeTo: this.route });