AD8*_*AD8 6 dependency-injection angular
背景:我需要在应用程序启动期间执行一些初始检查(1)从./assets/config.json文件中读取 angular 应用程序配置并从那里获取 API 端点,(2)对第一步中检索到的端点进行 API 调用并加载一些从后端设置。
目标:能够使用APP_INITIALIZER(例如 A 和 B)初始化两个服务,其中 B 依赖于 A。查看此 stackblitz以查看问题
我尝试过的事情:如果第二部分(能够向后端发出 API 请求)不在图片中,那么我设法使用 angularAPP_INITIALIZER来完成工作,然后我搜索了一些文章并找到了这篇文章在 Angular 中管理 App Initializers 之间的依赖关系,其中列出了 3 种方法,第 3 种是推荐的方法(因为它易于维护),但我并没有真正理解所有这些,我相信作者没有包含完整的代码实现每种方法(我确实知道作者要求是否提供代码示例,我可能是错的)。如果有经验的人可以分享他们的知识,我将非常感激。
PS:我没有在这里添加任何代码,因为我不太确定我尝试的是否明智,但很高兴添加一些代码。
Stackblitz1(单APP_INITIALIZER) - https://stackblitz.com/edit/angular-puaw7a
[问题] Stackblitz2 (multiple APP_INITIALIZER) - https://stackblitz.com/edit/angular-7uqijv
只是使用
useFactory: (appConfigSvc: ConfigService,settingsService:SettingsService) => {
return () => {
return appConfigSvc.loadConfig().then(()=>{
return settingsService.loadConfig()
});
};
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3058 次 |
| 最近记录: |