首页 > 解决方案 > 如何有效地将参数添加到我的 Angular 7 路由?

问题描述

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

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

这是我的来自 ItemList 组件模板的 routerlink:

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

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

我的方法有什么问题,我该如何解决?我只想让我的按钮从项目转到项目/详细信息/{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'

标签: angularangular-routing

解决方案


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

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

推荐阅读