Angular 在当前路由上设置查询参数

Angular 在当前路由上设置查询参数,angular,angular2-routing,Angular,Angular2 Routing,我的Angular2路由器有问题。我正在显示多个列表,用户可以在其中选择项目。我想将这些选定项目的id作为查询参数传递给当前/激活的路线,即: 1当用户位于包含两个列表的主页面上时,url为:localhost//main 2当用户从第一个列表中选择项时,该项应保持选中状态,url应更改为localhost//main;firstItem=1,但两个列表应仍然可见-无路由重定向 3对于第二个列表,它应该是类似的,因此在选择url后,应该更改为localhost//main;第一项=8,第二项=9

我的Angular2路由器有问题。我正在显示多个列表,用户可以在其中选择项目。我想将这些选定项目的id作为查询参数传递给当前/激活的路线,即:

1当用户位于包含两个列表的主页面上时,url为:localhost//main

2当用户从第一个列表中选择项时,该项应保持选中状态,url应更改为localhost//main;firstItem=1,但两个列表应仍然可见-无路由重定向

3对于第二个列表,它应该是类似的,因此在选择url后,应该更改为localhost//main;第一项=8,第二项=9

我已经实现了在保存或取消时从子组件/路由-项目管理传递查询参数,以选择列表中的项目,方法如下:

this.router.navigate(['/main', { firstItem: item.id }]);
工作正常,结果url为:localhost//main;第一项=1

但是,我无法在激活的路由上设置查询参数,在本例中,这是所需的行为。简单,类似于上面的解决方案抛出一个错误,即出口尚未激活

有什么想法或建议吗