Injizierte Abhängigkeit ist beim Erweitern von BaseRequestOptions nicht definiert.

Ich verlängereBaseRequestOptions in Angular2, um Header für jede Anforderung hinzuzufügen. Ich habe auch einConfig -Klasse, die Schlüssel / Wert-Paare basierend auf der Domäne bereitstellt, die ich in meine abgeleitete Klasse einfügen muss:

import { BaseRequestOptions } from '@angular/http';
import { Config } from '../../config/configuration';

export class DefaultRequestOptions extends BaseRequestOptions {
  constructor(private config: Config) {
    super();

    Object.keys(this.config.api.headers).map((key) => {
      this.headers.append(key, this.config.api.headers[key]);
    });
  }
}

In meinem Modul gebe ich den Provider als solchen an:

@NgModule({
  . . .,
  providers: [
    . . .,
    { provide: RequestOptions, useClass: DefaultRequestOptions }
  ]
})
. . .

Das Problem, das ich habe, ist, dassthis.config istundefined imDefaultRequestOptions. Ich benutze auch dasConfig class als injizierte Abhängigkeit in anderen Klassen, daher bin ich mir sicher, dass es wie erwartet funktioniert und wenn ich die Werte für @ manuell einstelthis.headers alles funktioniert gut.

Was mache ich falsch, das würde dazu führen, dass die Konfiguration in @ undefiniert isDefaultRequestOptions?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage