Angular RouterLink相对路径在具有空路径的组件中不起作用

简直很好

我的孩子路径定义为

{ path: '', component: CartMainComponent, pathMatch: 'full' }

当我在CartMainComponent中时,整个路径如下所示:http://mystype.com/brand/MyBrandId/cart我想导航到购物车中,/brand/MyBrandId/cart所以我routerLink="../cart"在html中使用了它。但这给了我下一个错误

错误:无法匹配任何路线。网址段:“品牌/网站/购物车/目录”

只有当我做routerLink="../../../cart"它的工作原理

即使将空路径视为相对路径的附加级别,这也是不合逻辑的。我仍然希望仅使用两次“ ..”,而不是三次

是否可以修复它,这样我就可以相对通过路线而不考虑是否有空路?

简直很好

是的,Angular团队添加了针对此问题的修复程序,但您需要通过添加以下操作手动启用它

relativeLinkResolution: 'corrected'在根路由器配置中。

@NgModule({ imports: [RouterModule.forRoot(routes, { relativeLinkResolution: 'corrected'})], exports: [RouterModule] })

但是请注意,此“错误修正”不能解决整个错误。这就是默认情况下未启用它的原因。此PR描述了该问题:https : //github.com/angular/angular/issues/26983请记住这一点。

在github线程https://github.com/angular/angular/issues/13011中也讨论了RelativeLinkResolution

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章