我希望导入从服务文件返回的值,例如,服务文件为:

http.service.ts

selectedEnvironment() {
  return "abc";
}

但是如何将这个值放入我的app.module文件中。 有没有首选的方法?

我试过了:

app.module

import { HttpService } from "./http.service";

export function HttpLoaderFactory(httpClient: HttpClient) {
  return new TranslateHttpLoader(httpClient, "./assets/" + HttpService.selectedEnvironment()+"/i18n/", ".json");
}

但是它说“ typeof HttpService类型type上不存在属性selectedEnvironment ”。

#1楼 票数:2 已采纳

如果是角度服务

import { Injectable } from "@angular/core";

@Injectable()
export class YourHttpService {
  constructor() {}

  getEnvironment() {
    return "XYZ";
  }
}

您可以在HttpLoaderFactory中将服务指定为参数。 请确保在您的应用程序模块的deps:[HttpClient,YourHttpService ]和提供程序提供程序:[YourHttpService]中指定了服务名称

export function HttpLoaderFactory(httpClient: HttpClient,httpService:YourHttpService) {
    console.log(httpService.getEnvironment());
  return new TranslateHttpLoader(httpClient);
}

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    HttpClientModule,
    TranslateModule.forRoot({
      loader: {
        provide: TranslateLoader,
        useFactory: HttpLoaderFactory,
        deps: [HttpClient,YourHttpService]
      }
    })
  ],
  providers: [YourHttpService],
  bootstrap: [AppComponent]
})
export class AppModule { }

示例代码https://stackblitz.com/edit/transalate-vvmckq?file=src/app/app.module.ts

#2楼 票数:0

在app.module.ts中添加此

 providers: [HttpService]

  ask by Andrew Junior Howard translate from so

未解决问题?本站智能推荐:

1回复

如何在app.module中的服务内部调用方法-Angular

我在服务中具有以下功能: 应用模块 如果我在服务中执行以下操作,则可以在app.module中访问该函数,但不能使用this.router.url :
1回复

如何将app.module分成较小的文件?

我正在学习Ionic 3,Angular 4和ngrx设计模式。 我有一个正常工作的应用程序,但是我的app.module.ts看起来像这样(省略了导入): 但是我想有单独的.module文件,例如modelOne.module.ts : 依此类推,每个模型/页面都有自己的模型。
1回复

Angular将HttpClient从app.module传递到另一个模块到服务

我正在开发Angular(ngx- *)NPM软件包。 我已经正确编译了它,并且正在使用npm link在一个新的新项目中使用它 该服务具有以下构造函数以注入HttpClient和设置。 更新。 我的服务 MyService.Module 我在模块中有以下root用户
1回复

通过从后端获取数据来设置从app.module导入

在 Angular 中,是否可以通过从后端获取数据来设置从 app.module 导入? 因此,使用来自服务器的密钥设置 CONFIG.keyFromDServer。 APP_INITIALIZER 可以做到这一点,如果是这样,或者无论如何?
1回复

ngbuild上app.module中的单例服务错误

我正在使用将在所有组件之间共享的单例服务,我创建了一个CoreModule ,其静态类为: 在app.module.ts中 Globals dict是在index.html中创建的,其值来自后端。 现在我在app.module.ts中使用此Globals变量,并将此初始值提供给Core
1回复

AngularGoogleMaps(AGM):在app.module中获取Api键

我正在为Angular 6应用程序使用Angular Google Maps (ngm)。 我想将api密钥存储在我的config.json文件中,并通过配置服务读取它。 如下已在APP_INITIALIZER中调用了配置服务: app.module.ts: 我还导入了AgmCoreModule。
1回复

从app.module中的本地json文件读取apiurl

我正在做一个 Angular 项目。 这个项目将建立在不同的地址。 而且每个api链接都会不同。 我想通过将这些地址保存在 json 文件中来在本地使用它,而不是在 app.module 中为每个更改和构建 apiUrl 提供程序。 我在 app.module.ts 中的当前代码; 由于这些地址在每
1回复

无法加载资源:app/app.module

从IISExpress加载html页面时,出现主题错误。 “从http:// localhost:7041 / src / main.js加载http:// localhost:7041 / src / app / app.module作为“ ./app/app.module”时出错 “