サービスプロバイダを使用して呼び出す汎用RESTサービスがあるため、URLを渡すことができます。 サービスを複数のプロジェクト(それぞれ異なるREST APIを使用している)や同じプロジェクトの異なるコンポーネント内で再利用できるように、これを実行したいと思います。関数2の場合、角2/4サービスプロバイダはコンパイルされません。
私は私のサービスプロバイダーとして、次のしている:私は今、理論的には個々のコンポーネントまたはapp.moduleレベルでこのサービスプロバイダを使用して、URLを通過することができるはずです
import { Http } from '@angular/http';
import { ODataService } from './odata.service';
export function ODataServiceProvider(url: string) {
return {
provide: ODataService,
useFactory: (http: any) => {
return new ODataService(url, http);
},
deps: [Http]
}
}
。
providers: [
SafeUrlPipe,
ODataServiceProvider("http://services.odata.org/V3/(S(pq1lpmgz0kuok05ubqtx1c2g))/OData/OData.svc/")
],
これが今エラーを通じて、私はプロジェクトにサービスを提供する時期(またはビルド)::私はそうのようapp.module.tsでそれを行っているエラーで
ERRORは、シンボル値を解決遭遇しました静的に。 関数呼び出しはサポートされていません。 /の/ dev/SVN /製品/ PredictiveAnalytics /トランク/ Glencor eAnalyticsPortal: CにシンボルODataServiceProviderを解決する、機能またはエクスポート機能( 元.TSファイル内の位置8時21分)を基準とした ラムダを交換検討GlencoreAnalyticsPortal.Webclient/src/app/shared/services/odata/odata.serviceProvider.ts、 C:/ dev/SVN/Products/PのAppModuleを解決する redictiveAnalytics/Trunk/GlencoreAnalyticsPortal/GlencoreAnalyticsPortal.Webclient/src/app/app.module.ts、 CにシンボルAppModuleを解決:は/ dev/SVN /製品/ PR edictiveAnalytics /トランク/ GlencoreAnalyticsPortal/GlencoreAnalyticsPortal.Webclient/srcに/アプリ/ app.module.ts
しかし、プロジェクトが提供されて監視されている間にファイルを保存すると、エラーは発生せず、すべてが期待通りに機能します。 この問題を解決する手掛かりはありますか?これは角度の問題ですか?
は、今コンパイルしますが、その実際を提供するように思える:さらに、サービスプロバイダは、このような角度のAPIのように設定のセットを必要とする場合は、実際にはURL文字列はインタフェースでも持っている可能性があり、この上に構築するには
今機能する。 –
私は以前のように実際のサービスにアクセスすることはできません。 –