簡體   English   中英

在Angular 7中將工廠方法從AppModule移至AppComponent

[英]Move factory method from AppModule to AppComponent in Angular 7

我使用ngx-translate-multi-http-loader loader創建特定的翻譯。 該文檔要求必須在app.module.ts中創建該工廠:

export function multiTranslateHttpLoaderFactory(http: HttpClient) {
  return new MultiTranslateHttpLoader(http, [
    {prefix: './assets/i18n/default/', suffix: '.json'},
    {prefix: './assets/i18n/bc/', suffix: '.json'}
  ]);
}

通過以下方式在導入數組中配置此工廠:

TranslateModule.forRoot({
  loader: {
    provide: TranslateLoader,
    useFactory: multiTranslateHttpLoaderFactory,
    deps: [HttpClient]
  }
}),

我需要一種將工廠放入我的app.component.ts中的方法,因為我仍然必須編寫一些邏輯,並且不想在我的app.module.ts中這樣做。

但是,如果我將方法移到我的app.component.ts中,並在文件頂部制作了所有必要的import語句,則angular不會編譯並返回以下錯誤消息:

src / app / app.module.ts(55,21)中的錯誤:錯誤TS2304:找不到名稱“ multiTranslateHttpLoaderFactory”。

有沒有可能或者我真的必須在app.module.ts中定義工廠???

定義工廠的位置或與此相關的任何其他功能都沒關系。 只要確保將其正確導入即可,位於app.module.ts頂部的app.module.ts

import {multiTranslateHttpLoaderFactory} from 'path/to/your/component'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM