簡體   English   中英

帶有 url 段的 routerLink 在 angular 8 中不起作用

[英]routerLink with url segment not working in angular 8

這是我的代碼:

<span *ngIf="markup.baseline">   
   <mat-icon [routerLink]="['/default-markup', markup.id]">edit</mat-icon>
 </span>
 <span *ngIf="markup.baseline == 0">   
   <mat-icon [routerLink]="[markup.id]">edit</mat-icon>
 </span>

url 必須為“default-markup/14”的第一個鏈接不起作用。 它適用於第二種情況。

錯誤是

core.js:6014 ERROR Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'default-markup/14

下面是路由模塊中的代碼:

      {path: ':client', component: MarkupsListComponent, },
      {path: ':client/default-markup', component: MarkupsBaselineComponent,},
      {path: ':client/default-markup/:rule_id', component: MarkupsBaselineComponent,},
      {path: ':client/:rule_id', component: MarkupsDetailComponent,},

您必須在/default-markup之前刪除/ 當你在 URL 中提到/時,它會從根路由考慮它,否則它將相對於當前路由。

下面使用

[routerLink]="['default-markup', markup.id]"

你必須為每條路線傳遞客戶端 ID,像這樣改變它,

<span *ngIf="markup.baseline">   
  <mat-icon [routerLink]="['/', clientId,'default-markup',markup.id]>edit</mat-icon>
</span>
<span *ngIf="markup.baseline == 0">   
  <mat-icon [routerLink]="[clientId]">edit</mat-icon>
</span>

堆疊閃電戰示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM