2017-01-12 47 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() 
下工作过

下定义的路由