Angular 2 routerLink params&查询参数

时间:2018-05-16 06:13:38

标签: angular typescript angular2-routing angular5 angular4-router

这是我的路线:

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

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

市场/ BTC?侧边栏=家

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

但是当我点击其重定向 market / btc

问题是什么。

编辑

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

4 个答案:

答案 0 :(得分:4)

你可以尝试:

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

或:

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

答案 1 :(得分:3)

您只需要保留queryParams:

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

将以上属性/指令添加到您的路线:

{{1}}

答案 2 :(得分:3)

您的代码中没有问题。我试着跟随它并且很好地工作。

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

<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

答案 3 :(得分:1)

尝试使用:

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