首页 > 解决方案 > 角度错误:未捕获(承诺):错误:无法匹配任何路由

问题描述

当我单击 car-detail.component.html 文件中的按钮时,我想转到rental.component.html 文件。但我遇到了一个错误。如何解决此错误?

我的 app-routing.module 文件 我的 app-routing.module 文件

我添加到路由器的 HTML 文件link 我添加到路由器的 HTML 文件link

单击按钮时出现的错误是这样的 单击按钮时出现的错误是:

标签: angulartypescript

解决方案


将您的 html 更新为routerLink="/rental/{{car.carId}}"应该可以解决问题。

这是对 routerLink 的 Angular 文档的参考:https ://angular.io/api/router/RouterLink#relative-link-paths

第一个段名称可以在前面加上 /、./ 或 ../。

  • 如果第一段以 / 开头,则路由器从应用程序的根目录查找路由。

  • 如果第一段以 ./ 开头,或者不以斜杠开头,则路由器查找当前激活路由的子节点。

  • 如果第一段以 ../ 开头,则路由器在路由树中上升一级。

因此,在您的情况下,您在 route 上cars/:carId,并且由于您的 routerLink 不是以 a 开头,/, ./ or ../因此它相对于当前路由并查看其子级(没有子级)。您需要对其进行更新以在根级别查找路由。/在路线的开头添加将实现这一点。


推荐阅读