gpt4 book ai didi

具有动态值的 Angular index.html |网络 worker

转载 作者:太空狗 更新时间:2023-10-29 17:53:05 33 4
gpt4 key购买 nike

直到最近我们才使用 express.js 为 Angular 提供 index.html,因为我们需要在应用程序启动之前从数据库中填充动态变量。

<script> window .__ envs = {{{json envs}}} </script>

但是,新的 Angular 7 通过 web-worker 缓存源 index.html。

所以当我加载网络时,它不会正确加载,直到我点击重新加载。

我试图从 webworker 中禁用 index.html。什么都没发生。

我试图关闭 web-worker 并在所有地方删除它。现在我不必使用硬重新加载,但第一次加载仍然会显示源文件而不是通过 express.js 修改

1)源为什么要加载源文件,它是如何到达的?

2) 我可以在 webworker 中设置它吗?

最佳答案

您可以在模块中使用 APP_INITIALIZER 并使用工厂来加载提供程序服务,如下所示:

@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
HttpModule
],
providers: [
ServiceProvider,
{ provide: APP_INITIALIZER, useFactory: ServiceProviderFactory, deps: [ServiceProvider], multi: true }
],
bootstrap: [AppComponent]
})
export class AppModule { }

将数据作为服务获取的服务:

@Injectable()
export class ServiceProvider{
constructor(private http: Http) {

}

getInitialData(){

// your fetch logic from API
}
}

您的服务工厂(添加到模块中):

export function ServiceProviderFactory(provider: ServiceProvider) {
return () => provider.getInitialData();
}

关于具有动态值的 Angular index.html |网络 worker ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55555051/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com