2017-09-05 111 views
1

我试图使用此语法与queryParams导航在这里接受的答案如下:Sending data with route.navigate in Angular 2强制执行角4路由器queryParameters

this.router.navigate(['add', { queryParams: { type: $event.value } }], { relativeTo: this.route }); 

然而代替: .../add?type=someEventValue

这导致可选参数(又名矩阵符号)

.../add;queryParams=%5Bobject%20Object%5D

我做错了什么?有没有办法在Angular 4.3.x路由器中实施旧式的搜索参数?

回答

0

如果您将可选参数添加到根路由,您会得到?param=value,如果将它添加到子路由,您将获得;param=value

角需要这个来区分哪些路径参数属于。

+0

所以,你的意思是,queryParams只能从根组件的级别(例如app.component.ts)使用? – user776686

+0

没错。添加到其他路由段的查询参数会导致矩阵参数形式。 –