【发布时间】:2017-06-15 16:21:34
【问题描述】:
我正在尝试将旧 URL(电子邮件模板中的链接)从以前的站点重定向到另一个路径,如下所示:
if (route.url.indexOf('/#/') !== -1) {
this.router.navigate(['/my-route']);
}
但是,导航被取消,原因如下:
Navigation ID 2 is not equal to the current navigation id 3.
查看 Angular 2 路由器源代码,当 id !== this.navigationId (https://github.com/angular/angular/blob/master/modules/@angular/router/src/router.ts#L652) 时,这发生在 runNavigate 方法中。我找不到有关navigationId 属性的任何信息,为什么会发生这种情况以及如何解决它。
现有路由之间的重定向似乎有效,但在这些旧的 hashmark URL 和现有路由之间无效。两个路由都必须存在于路由器中才能在它们之间进行重定向吗?
我们将不胜感激。
【问题讨论】: