我记得在文档中看到,您可以拥有代码,例如身份验证,只有在应用首次加载时才能运行。对我来说不幸的是,尽管看起来我再也找不到了。
在我的情况下,我想获取用户详细信息,例如名称,而不必在每次请求信息时都进行API调用。
答案 0 :(得分:4)
根据具体要求,有许多不同的方式:
How to pass parameters rendered from backend to angular2 bootstrap method在Angular初始化AppComponent
之前执行方法
https://angular.io/docs/ts/latest/guide/router.html#!#guards在激活路线之前执行
初始化MyService
(或任何其他模块)时执行AppModule
的构造函数
@NgModule(...)
export class AppModule {
constructor(myService:SomeService) {}
}
MyService
(或任何其他组件或指令)时执行AppComponent
的构造函数class AppComponent {
constructor(myService:SomeService) {}
}
答案 1 :(得分:1)
如果我正确理解了您的问题,您可以在AppComponent
的构造函数方法中获取数据。
这意味着你可以在加载AppComponent
时获取数据(只加载一次,如果我是正确的),或者如果你想在其他组件中获取数据,你可以使用它{{1当您的类实现constructor()
时,或ngOnInit()
方法。你只需要在合适的范围内做到这一点。
请记住,您应该使用服务从外部来源获取数据。