Angular 6路由器链接问题在同一页面

mar*_*ani 3 angular-components angular angular6

我有两个链接:

  1. ['/productlist',1000]
  2. ['/productlist',1001]

这两个链接位于同一页面上。如果我第一次点击任何链接。它正在重定向到该页面,但如果我单击其他链接,它就不起作用。

组件.html代码

<a class="dropdown-item" (click)="GetProductList(subitem.SubCategoryID)">
 <i class="mdi mdi-chevron-right" aria-hidden="true"></i> 
 {{ subitem.SubCategoryName}}
</a> 

GetProductList(SubCategoryID){ 
    this.router.navigate(['/productlist',SubCategoryID]); 
}
Run Code Online (Sandbox Code Playgroud)

Ole*_*ruk 5

由于对于角度来说它是相同的路线 - 它不会重新加载。

\n\n

两种可能的解决方案:

\n\n
    \n
  1. 在组件中订阅 this.route.params 并做出相应的反应,就像在Angular 4 routerLink 中一样 - 重新加载当前路由

  2. \n
  3. 在 Angular 5 中,有一个重新加载活动路由的选项:

  4. \n
\n\n

RouterModule.forRoot(路由, {onSameUrlNavigation: \xe2\x80\x98reload\xe2\x80\x99}

\n\n

尝试一下

\n

  • onSameUrlNavigation 不会触发生命周期,只有守卫和解析器参见 https://github.com/angular/angular/issues/21115” (2认同)