これはまだ私のために働く。ここで私が使用したカスタムオプションのクラスは次のとおりです。
import {BaseRequestOptions, RequestOptions, RequestOptionsArgs} from '@angular/http';
export class AppRequestOptions extends BaseRequestOptions {
constructor() {
}
merge(options?:RequestOptionsArgs):RequestOptions {
options.url = 'https://www.test.org' + options.url;
return super.merge(options);
}
}
、私はそれをこのように登録します。
bootstrap(App, [
HTTP_PROVIDERS,
provide(RequestOptions, {useClass: AppRequestOptions})
]);
このplunkr参照:https://plnkr.co/edit/MK30JR2qK8aJIGwNqMZ5?p=previewを。
編集
このようなクラスの依存性注入のレベルに問題があるようです。私は問題を開いた:https://github.com/angular/angular/issues/8925。 RequestOptions
からではなくBaseRequestOptions
から延び
私に戻ってくれてありがとう。オプションクラス自体は問題なく機能しますが、私にとって重要なことは、 'undefined'として渡される 'webApiBaseUrl'(またはそれ以外のもの)を注入しようとしていることです。 – Monkeeman69
@ Monkeeman69 Wouah、あなたは完全に正しいです。 Dependency Injectionは 'BaseRequestOptions'を拡張したクラスではうまくいかないようですが...(webApiBaseUrl'の)注入が他の場所で可能ですが。私はそれがバグ/回帰だと思う。私はこれのためにバグをオープンします。 –
私が開設した問題は次のとおりです:https://github.com/angular/angular/issues/8925。 –