2016-12-02 105 views
2

我想用一個按鈕標籤替換一個錨標籤以導航到另一條路線。其結果是,我有一個被稱爲上點擊功能,這看起來是這樣的:Angular 2,無法匹配任何路線

submitReport (simpleOrDetailed : string) { 
     this.router.navigate(['../ticket-list', simpleOrDetailed]); 
} 

我曾經有過像這樣嵌入在HTML和完美的罰款,它的工作:

<a class="btn btn-danger" [routerLink]="['../ticket-list', 'simple']" routerLinkActive="active"> Simple Report</a> 

這是怎麼回事?根據我的理解,它應該做同樣的事情。

UPDATE

我得到了它由與此 替換函數體,以配合我的路線(網絡報告是當前組件的父組件以及票證列表組件):

this.router.navigate(['web-report/ticket-list', simpleOrDetailed]); 

然而,這會導致不愉快的頁面重載。

回答

1

如果你這樣做相對導航,你需要添加relativeTo

this.router.navigate([crisis.id], { relativeTo: this.route }); 

https://angular.io/docs/ts/latest/guide/router.html

+0

我曾嘗試以下無濟於事: 'this.router.navigate([」 ../ ticket- list',simpleOrDetailed,{relativeTo:this.route}]);' 另外: 'this.router.navigate(['../ ticket-list',simpleOrDetailed,{relativeTo:this.route.parent} ]);' 我正在嘗試登錄目錄,以便可以訪問故障單列表的組件。 –

+0

好吧,它似乎有效:'this.router.navigate(['../ ticket-list',simpleOrDetailed],{relativeTo:this.route});'但我仍然得到這個糟糕的頁面重新加載。如果它有任何幫助,有一些參數與我在url中的對象有關(我不打算在那裏顯示)。 –

+0

什麼是一個不愉快的頁面重新加載? –

相關問題