Как установить параметры запроса для URL Angular2?

У меня есть требование установить URL с параметрами запроса, такими как /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.

4 ответа

Решение

Я нашел одно решение, разделив параметры маршрутизатора и запроса, как показано ниже:

<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/router"s Router

Вы можете передать их как элементы в массиве команд маршрутизатора:

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

Смотрите также https://angular.io/docs/ts/latest/guide/router.html

Вы должны обновить свой router.navigate

this.router.navigate(['/Questions', {id: 1234, pageid: 0}]);
Другие вопросы по тегам