How can I add query parameters to routerLink
?
@RouteConfig {
{path: '/search', name: 'Search', component: SearchCmp}
}
Let' say I want to route to /search?q=asdf
,
<a [routerLink]= " [ '/Search' , {q= 'asdf'}] ">Link 1</a>
this resolves to /search
.
Is there a way to add query parameters without using:
this.router.navigate( ['Search', { q: 'asdf'}]);
or
<a href="/search?a=asdf"> Link 2 </a>
?
If u need something as /search?q=asdf
than you can simply use:
@RouteConfig {
{path: '/search', name: 'Search', component: SearchCmp}
}
//And to generate router Links use:
<a [routerLink]="['/Search']" [queryParams]="{q:'asdf'}"></a>
This will generate the href tag as <a href="/search"
but on clicking the anchor tag will lead you to url /search?q=asdf
. [queryParams] will let you add the query params with "?", otherwise they will be appended by ";". You can get this parameter in your SearchCmp
using:
constructor(private _routeParams: RouteParams) {
var queryParam = this._routeParams.get('q');
}