我使用Angular2 RC.4和Router3 rc.1。
如何实现routerOnActivate
?
import { OnActivate } from '@angular/router';
给出模块没有导出成员的错误。
这还没有完全实现,因为它是发布的目标,文档似乎有点超前。如本文所述
在我看来,这是最关键的功能缺失从Angular 2.0开始。我可以使用@brandonrobertsOnActivate解决方案,但现在它已经在发布候选版本中消失了我觉得这里有点high and dry !我犹豫着要不要用第三个像ngrx/router或ui-router这样的解决方案在早期就出现了这个项目。
由于ngconf, rc有点不成熟,我猜。
就连@brandonroberts在ngconf的研讨会上也没有提到在加载路由之前解析数据,因为这种机制在新路由器中还不存在。
你可以用警卫代替吗?
您无需导入任何内容即可使用routerOnActivate()
。在你的组件内部,你可以像使用ngOnInit(){}
函数一样直接使用routerOnActivate(){}
。
export class DummyComponent() {
ngOnInit() {
// Do somehting here
}
routerOnActivate() {
// Do something else here
}
}