web-dev-qa-db-fra.com

Comment passer des paramètres de requête avec un routerLink

Je veux passer un paramètre de requête prop=xxx.

Cela n'a pas fonctionné

<a [routerLink]="['/somepath', {queryParams: {prop: 'xxx'}}]>Somewhere</a>
98
Günter Zöchbauer

queryParams

queryParams est une autre entrée de routerLink où ils peuvent être passés comme

<a [routerLink]="['../']" [queryParams]="{prop: 'xxx'}">Somewhere</a>

fragment

<a [routerLink]="['../']" [queryParams]="{prop: 'xxx'}" [fragment]="yyy">Somewhere</a>

routerLinkActiveOptions

Pour que les classes actives soient également définies sur les routes parentes:

[routerLinkActiveOptions]="{ exact: false }"

Pour transmettre les paramètres de requête à this.router.navigate(...), utilisez

let navigationExtras: NavigationExtras = {
  queryParams: { 'session_id': sessionId },
  fragment: 'anchor'
};

// Navigate to the login page with extras
this.router.navigate(['/login'], navigationExtras);

Voir aussi https://angular.io/guide/router#query-parameters-and-fragments

209
Günter Zöchbauer