2017-01-12 46 views
0
const myRoutes: Routes = [ 
    { path: "error", component: ErrorComponent, pathMatch: "full" }, 
    { path: "", component: HomeComponent } 
]; 

我有上述路由。默認情況下,它啓動HomeComponent,並在構造函數中有一個條件來檢查導致ErrorComponent的錯誤。更新路由器3.0.1後,Router.Navigate無法工作到3.4.1

this.router.navigate(["/error"]); 

但是,在更新路由器之後,除了其他角庫和依賴項之外。這不再有效。 URL路由到錯誤路徑,但組件未啓動。我在構造函數中有一個斷點,但它沒有受到影響。控制檯中也沒有錯誤。我嘗試將ErrorComponent設置爲默認頁面,只是爲了檢查組件本身是否出現問題,但實際上是加載的,而不是在路徑與組件關聯時。

不確定它是否相關,但我沒有做任何延遲加載,所以所有的組件都在開始時被構造。

我查看了文檔,看看是否有任何區別。我也試圖改變呼叫:

this.router.navigate(["error"], { relativeTo: this.route }); 
//where "route" is ActivatedRoute 

回答

0

我感動的路徑,

RouterModule.forChild() 

不知道爲什麼它

RouterModule.forRoot() 
下工作過

下定義的路由