RouterLink中间的Angular 6查询参数

时间:2018-08-20 06:51:21

标签: angular typescript

如何将参数放入routerlink

我正在尝试做这样的事情:

<p *ngFor="let supplier of suppliers">
   <a [routerLink]="['/supplier/{{supplier.businessId}}/products']">
        View Products
   </a>
</p>

3 个答案:

答案 0 :(得分:9)

您可以在routerlink中访问查询参数,如下所示。

 <a routerLink="/product/productDetails/{{item.product.id}}" title="Edit"> <span class="glyphicon glyphicon-pencil"></span> </a>

routerLink和[routerLink]有什么区别?

根据您在routerLink中的问题,您可以直接使用上面的代码中所示的queryparams,但是在[routerLink]中,您可以像这样设置queryparams。

<a [routerLink]="['/user/bob']" [queryParams]="{debug: true}" fragment="education">
  link to user component
</a>

有关更多信息,请访问此链接:https://angular.io/api/router/RouterLink

答案 1 :(得分:4)

routerlink=""

这将分配=右侧的内容。如果存在带有{{}}的表达式,则会对其进行评估和分配。

示例-routerlink="something"-此处将某些内容作为 string

分配给routerlink
 [routerlink]=""

[]强制评估=的右侧。

示例-[routerlink]="something"-在这里某些东西将被评估为 属性 ,引擎将尝试在组件上查找名称为something的属性,对其求值,然后将其值分配给routerLink

答案 2 :(得分:0)

取决于您使用的 Angular 版本,但您也可以执行以下操作:

<p *ngFor="let supplier of suppliers">
   <a [routerLink]="['/supplier', supplier.businessId, 'products']">
        View Products
   </a>
</p>

这将不需要大括号 {{ }}