Angular2 ngOnInit不开火

时间:2016-04-28 04:57:50

标签: angular

使用ngOnInit转到组件后,我无法启动router.navigateHere are the files in a gist与我的问题有关。在那里,我有一个自定义路由器插座的代码,我检查,看看是否有人登录。它很棒;如果他们已登录,则会将其发送到dashboard组件。如果不是,则将它们发送到home组件。唯一的问题是,当它将它们发送到dashboard组件时,ngOnInit组件中的dashboard函数不会被触发。因此,我想要显示/隐藏基于从服务返回的数据的页面的一部分,直到我进行刷新。

我不得不在几个地方使用NgZone,而在这里使用它并没有帮助。我知道ngOnInit函数没有运行,因为函数中的console.log永远不会被调用,因此不会打印出来。

使用ngOnInit时是否存在使router.navigate无法运行的内容?

1 个答案:

答案 0 :(得分:1)

可能会https://github.com/angular/angular/issues/8109#issuecomment-211450358

  

尝试使用Promise而不从es6-promise导入它。如果您包含一个提供未经zone.js修补的承诺的模块,它将不会触发更改检测,这将解释为什么不会调用生命周期挂钩。

https://github.com/angular/angular/issues/6867

  

生命周期挂钩未在IE 11.0.9600.18163

中触发