![](/img/trans.png)
[英]How to do something with jquery after the DOM is ready but before the UI is rendered?
[英]Do http calls before DOM is ready Angular
我正在使用由angular-cli生成的Angular 5。
我想知道如何在DOM准備好並引導應用程序之前執行一些https調用。 我想這樣做是因為應用程序太大(該應用程序正在使用延遲加載)。 在網絡請求中,我看到了DOM執行其工作時可以用來進行http調用的時間浪費。
在這里,我們可以在chrome開發人員工具的“網絡”標簽中看到。 影像網絡
我嘗試像這樣在AppModule中添加提供程序:
{
provide: APP_INITIALIZER,
useFactory: (setup: SetupService) => () => setup.execute(),
deps: [SetupService],
multi: true
}
並在main.ts中執行以下操作:
setupSerice.setup().then(() => {
platformBrowserDynamic().bootstrapModule(AppModule)
.catch(err => console.log(err));
});
但我得到相同的結果。 setupService執行我的http調用。
我還能嘗試或做什么?
感謝您的建議。
我假設您得到的結果是等到服務返回后再引導。 如果您撥打了調用設置服務的服務,該怎么辦。 該第一個服務可以在調用設置服務后才返回諾言。 我相信一旦您兌現承諾,該應用程序就會啟動。
像這樣:ServiceCallerService
doIt():Promise<any>{
return new Promise((resolve) => {
this.setupService.execute();
resolve();
});
}
setupService可以將您的數據存儲在一個行為主題中,然后您可以在需要時獲取它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.