如何将查询参数设置为 url Angular2?

How to set query parameters to url Angular2?

我需要使用 /Questions?id=1234&pageid=0 等查询参数设置 url。我试图通过 router.Navigate['/Questions?id=1234&pageid=0'] 做到这一点,但没有成功。

导航浏览器显示后/Questions%3Fid%3D1234%26pageid%3D0

我也尝试过设置 routerLink="/Questions?id=1234&pageid=0",但结果相同。

请提出任何解决方案 it.I am using rc5 for angular2.

您可以将它们作为路由器命令数组中的项目传递:

[routerLink]="['/Questions'] [queryParams]="{id:1234, pageid:0}} ]"

另见 https://angular.io/docs/ts/latest/guide/router.html#!#query-parameters

我找到了一个解决方案,将路由器-link 和查询参数分开,如下所示:

<a [routerLink]="['/Questions']" [queryParams]="{id:1234,page:1}"></a>

这对我来说很好。

您可以在路由器中将它们作为项目传递,但在命令数组之外:

[routerLink]="["/Questions"], {queryParams: {id:1234, pageid:0}}"

这会生成您想要的内容:/Questions?id=1234&pageid=0

或者您可以编程方式使用它:

this.router.navigate(['/Questions'], { queryParams: {id:1234, pageid:0} })

路由器是 @angular/routerRouter

的实例

您需要更新您的 router.navigate

this.router.navigate(['/Questions', {id: 1234, pageid: 0}]);