2016-08-15 65 views
1

我對我在使用Angular 2中的路由器參數方面感到頭疼,並想知道是否有人遇到類似的問題,並可以告訴我我做錯了什麼。帶參數的角度2粘貼URL不起作用

考慮這條路線設置:

{ path: 'content/:id', component: ContentComponent } 

然後在組件內部,我可以使用參數作爲這樣的:

ngOnInit() { 
    super.ngOnInit(); 
    let id: string = this.route.snapshot.params['id']; 
    ... // do something with this id 
} 

當路由內部角度做這個工作:

this.router.navigate(['/content', 'abcde']); 

但是,當我將相同的URL粘貼到瀏覽器中時,出現此錯誤:

地址,我貼:http://localhost/content/abcde

Erorr:

Unhandled Promise rejection: Cannot match any routes: 'abcde' ; Zone: angular ; Task: Promise.then ; Value: Error: Cannot match any routes: 'abcde'

有誰知道我做錯了嗎?

非常感謝,

回答

1

這是發生在我身上時,當我按照路由文檔。

出於某種原因,我不明白,它說設置在index.html<base href=".">

將值更改爲<base href="/">爲我解決了這個問題。

+0

如果我可以upvote這100次,我會的。非常感謝你。它的工作原理並不明顯。我浪費了這麼多時間,這是令人難以置信的!乾杯。 – kha

+1

我知道它的感覺:)我也浪費了時間 – yarons