Javascript 使用Relative以编程方式导航到嵌套路由结果;错误:无法匹配任何路由。”;
我的路由器看起来像下面的完整示例: 当用户通过在URL栏中粘贴此地址从URL栏导航时:一切都按预期工作(正在按预期呈现Javascript 使用Relative以编程方式导航到嵌套路由结果;错误:无法匹配任何路由。”;,javascript,angular,angular-routing,Javascript,Angular,Angular Routing,我的路由器看起来像下面的完整示例: 当用户通过在URL栏中粘贴此地址从URL栏导航时:一切都按预期工作(正在按预期呈现FooEditComponent子组件) 但当用户首先导航到,然后尝试从标题组件(父项)导航到相同的“新”路由地址(以编程方式)时,通过单击“新”li,使用: header.component.html: <ul> <li style="cursor: pointer;"><a (click)="onNewClick()">New</
FooEditComponent
子组件)
但当用户首先导航到,然后尝试从标题组件
(父项)导航到相同的“新”路由地址(以编程方式)时,通过单击“新”li
,使用:
header.component.html
:
<ul>
<li style="cursor: pointer;"><a (click)="onNewClick()">New</a></li>
</ul>
它导致了以下错误:
错误:未捕获(承诺中):错误:无法匹配任何路由。
URL段:“新建”
我已经尝试了各种类似的答案,如(,),但没有任何进展。您可以将
li
移动到foos.component.html
<ul>
<li style="cursor: pointer;"><a [routerLink]="['./new']">New</a></li>
</ul>
- 您可能不需要此
{relativeTo:this.route}
尝试['./new']
,例如this.router.navigate(['./new'],relativeTo:this.activatedRoute)
-我使用activatedRoute,因为在构造函数中我使用私有activatedRoute:activatedRoute
-代码:
onNewClick() {
this.router.navigate(['new'], {relativeTo: this.route});
}
<ul>
<li style="cursor: pointer;"><a [routerLink]="['./new']">New</a></li>
</ul>