将Router 3.0.1更新为3.4.1后,Router.Navigate不起作用

时间:2017-01-12 19:37:13

标签: angular typescript

const myRoutes: Routes = [
    { path: "error", component: ErrorComponent, pathMatch: "full" },
    { path: "", component: HomeComponent }
];

我有上述路线。默认情况下,它启动HomeComponent,在构造函数中,它有一个条件来检查导致ErrorComponent的错误。

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

但是,在更新路由器之后,除了其他角度库和依赖项之外。这不再有效。 URL路由到错误路径,但组件未启动。我在构造函数中有一个断点,但它没有被击中。控制台中也没有错误。我试图将ErrorComponent设置为默认页面,只是为了检查组件本身是否出现问题,但它实际上是加载的,而不是当路径与组件关联时。

不确定它是否相关,但我还没有完成任何延迟加载,因此所有组件都在开始时构建。

我查看了文档,看看是否存在任何差异。我也尝试将呼叫改为:

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

1 个答案:

答案 0 :(得分:0)

我将路径移动到

下定义的路径
getAuthor()

不知道为什么它在

之前有效
RouterModule.forChild()