如何有效地将参数添加到我的 Angular 7 路由?

How do I effectively add a parameter to my Angular 7 routing?

所以我想在我的电子商务中添加一个简单的详细信息部分。两条路径如下所示:

{ path: 'items', component: ItemListComponent},
{ path: 'items/details/:id', component: ItemDetailComponent},

这是来自 ItemList 组件模板的我的路由器link:

<a routerLink="['/items/details',item.id]">See Details</a>

但是当我点击按钮时,我的 URL 不是 /items/details/{id}。复制 link 地址给我这个:/items/%5B'/items/details',item.id%5D

我的方法有什么问题,我该如何解决?我只希望我的按钮从项目转到 items/details/{id}。我的 item.id 确实包含正确的值,所以不是。

我也收到错误:

Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'items/%5B'/items/details',item.id%5D'

错误:无法匹配任何路线。 URL 段:'items/%5B'/items/details',item.id%5D'

您需要将 routerLink 括在方括号中:

<a [routerLink]="['/items/details',item.id]">See Details</a>