問題タブ [angular-dependency-injection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - インターフェイスを使用したファクトリ メソッドによる Angular2 依存性注入
Angular2 依存性注入を使用しようとしていますが、次のエラー メッセージが表示されます。
エラー NG2003: クラス 'PaymentService' のパラメーター 'service' に適切なインジェクション トークンがありません
app.module.ts - ファクトリ メソッドを持つプロバイダー
payment.service.ts - 注入可能な支払いサービス
payment.interface.ts、card-payment.ts、paypal-payment.tsファイル
注: PaymentService ファイルのインターフェイス「Payment」をその実装の 1 つ (PaymalPayment または CardPayment) に置き換えると、すべて正常に動作します。しかし、そこにインターフェースがあるのはかなり一般的なケースです。
- git クローンhttps://github.com/karenmargaryan/di-via-interfaces-issue
- cd di-via-interfaces-issue
- npm インストール
- サーブしない
angular - インターフェイス/モジュールへのAngular 8サービスのインポート
config.serivce.ts に ConfigService というサービスがあります。値を返す関数 ( getClientID ) を取得し、この値をモジュール ファイル appAuth.module.ts にインポートする必要があります。
そのようなファイルにサービス関数から値を挿入する方法を知る必要がありますか?
たとえば、私の appAuth.module.ts で:
angular - angularサービスインジェクション戦略を指定する方法は?
次のようなサービスがあります。
そして、私は次のような複数のコンポーネントに注入しています。
しかし、ルートが変更されるたびに BoxContainerService の新しいインスタンスを取得したいと考えています。ページを更新すると、新しいインスタンスが作成されます。しかし、MyList_page から B_page にルーティングし、再び MyList_page にルーティングすると、box$ カウントが増加します。モジュール中にサービスインスタンスを再作成したい。モジュールを別のモジュールにインポートするためです。