我刚刚发现了resolver class,发现它非常有用。
根据具体的网址,我需要预加载不同的对象。
但是,在我的布局(app.component.ts
+ app.component.html
中,我想使用解析器以便从api中预加载记录的用户数据。
我知道不能通过路由器访问此组件,因此目前我使用ngOnInit
挂钩。
在呈现应用程序组件之前,可以使用解析器预加载数据吗?
答案 0 :(得分:1)
APP_INITIALIZER 更适合加载整个应用的数据。
自 Angular 12 you can use Observables 起。
对于 app.component
,看起来解析器确实运行并等待它完成,但它只是不将数据传递给 App 组件。但是,即使在顶级定义了 resolve
,子组件也可以使用该数据。但是,如果确实需要全局加载某些内容,那么 APP_INITIALIZER 可能是您的最佳选择!