Angular 2 个 routerLink 参数和查询参数

Angular 2 routerLink params & query params

这是我的路线:

{ path: 'market/:currency', component: MainlayoutComponent, canActivate: [AuthGuard]}

我想使用这样的查询参数重定向到:

market/btc?sidebar=home

<a [routerLink]="['/market', currency]" [queryParams]="{sidebar: 'home'}"></a>

但是当我点击它的重定向时 market/btc

有什么问题。

正在编辑

此代码有效我有另一个错误但我解决了。

尝试使用:

<a [routerLink]="['/market', currency]" [queryParams]="{sidebar: home}"></a>

您只需要保留您的 queryParams :

queryParamsHandling="preserve"

将以上 attribute/directive 添加到您的路线中:

<a [routerLink]="['/market', currency]" [queryParams]="{sidebar: 'home'}" queryParamsHandling="preserve"></a>

您的代码没有问题。我试过关注它,效果很好。

我什至添加了一个额外的参数。

<a [routerLink]="['/market', currency]" [queryParams]="{sidebar:'home',tab:'5'}">Go to market</a>

TS :

const routes: Routes = [
    { path: "market/:currency", component: AppComponent}
];

我得到以下结果:

http://localhost:49152/market/currency?sidebar=home&tab=5

你可以试试:

<a [routerLink]="'/market/'+ currency" [queryParams]="{sidebar: 'home'}"></a>

或:

<a routerLink = "/market/{{currency}}" [queryParams]="{sidebar: 'home'}"></a>