我要求使用/Questions?id=1234&pageid=0
等查询参数设置网址。我试图通过router.Navigate['/Questions?id=1234&pageid=0']
来做但没有运气。
导航后的浏览器显示为/Questions%3Fid%3D1234%26pageid%3D0
。
我也尝试过设置routerLink="/Questions?id=1234&pageid=0"
,但结果相同。
请建议任何解决方案。我正在使用 rc5 angular2 。
答案 0 :(得分:22)
您可以将它们作为项目传递到路由器中,但在命令数组之外:
[routerLink]="["/Questions"], {queryParams: {id:1234, pageid:0}}"
这会生成您想要的内容:/Questions?id=1234&pageid=0
或者您可以使用programmaticaly:
this.router.navigate(['/Questions'], { queryParams: {id:1234, pageid:0} })
路由器是@angular/router
的{{1}}
答案 1 :(得分:14)
I found one solution by giving router-link and query-parameters separate, like below:
<a [routerLink]="['/Questions']" [queryParams]="{id:1234,page:1}"></a>
This is working fine for me.
答案 2 :(得分:6)
您可以将它们作为路径命令数组中的项目传递:
[routerLink]="['/Questions'] [queryParams]="{id:1234, pageid:0}} ]"
另见https://angular.io/docs/ts/latest/guide/router.html#!#query-parameters
答案 3 :(得分:2)
您需要更新router.navigate
this.router.navigate(['/Questions', {id: 1234, pageid: 0}]);