我正在处理 Angular2 (目前我们是关于beta-17版本的)应用程序,并且我已经配置了一些嵌套路由。除了一个有趣的问题外,一切似乎都在按预期工作。
一段时间后,只需在各种子路由之间导航,while (finished == PER_READ * counter);
实例就会丢失已配置的路由。在顶层,我们有两条路线恰好指向同一个router
仅用于测试/概念验证。 component
TypeScript 如下所示:
component
我添加了一行来检查// imports and decorators omitted for brevity...
export class HostNavAndBodyComponent implements OnInit {
userRoutes = UserRoutes.empty;
constructor(private router: Router, private routeService: RouteService) { }
ngOnInit() {
if (this.userRoutes) {
return;
}
this.routeService
.getRoutes(userRoutes => {
this.userRoutes = userRoutes;
try {
this.router
.config(
this.userRoutes
.routes
.map((value, _, __) => value.definition));
}
catch (err) {
console.error(err);
}
});
}
}
,以防止错误地多次尝试错误地配置路由器。它工作了一段时间,但突然间底层路由器失去了配置的路由,因为我们没有重新进入 - 没有路由。神圣的蝙蝠侠!
我的问题是,有没有办法检查是否已配置this.userRoutes
?