如何在Angular Module导入中进行注入

时间:2019-07-05 15:02:41

标签: angular dependency-injection ng-modules

我正在从这样的外部库中导入可配置模块:

@NgModule({
  imports: [ThirdPartyModule.forRoot(MY_CONFIG)]
})

问题在于MY_CONFIG不是静态的,并利用服务来定义其值,因此我将使用工厂来构建模块配置,如下所示:

@Injectable
class ConfigFactory {
  constructor(private configService: ConfigService){}

  public config(){
    return {
      someconfigvalue: this.configService.buildSomeConfigValue()
    };
  }
}

在这种情况下,我应该像这样重写导入

@NgModule({
  imports: [ThirdPartyModule.forRoot(configFactory.config())]
})

但是我不知道如何注入配置工厂。

我知道,如果我与供应商发生这种情况,我可以使用工厂供应商。

模块导入是否有类似的东西?我可以使用工厂导入模块吗?还是有解决此问题的另一种方法?

P.S。请注意,我无法更改ThirdPartyModule的代码。

0 个答案:

没有答案