問題タブ [angular2-di]
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 - angular DIを個別に使用する方法
この記事では、次のように述べています。
ただし、既存の DI (angular1) にはいくつかの問題があります。
フレームワークに組み込まれている - Angular 1 の DI はフレームワークに組み込まれています。スタンドアロン システムとして切り離して使用する方法はありません。
angular2 DI をスタンドアロン システムとして使用するにはどうすればよいですか? 私が理解しているように、個別のパッケージとして公開されていません。
javascript - @Host デコレータはインジェクタ ツリーでどのように機能しますか
@Host
デコレータが view-components から切り離されてどのように機能するかを理解しようとしています。そこで、次のインジェクター ツリーを作成しました。
私が理解しているように、grandchild
インジェクターのホストはchild
であり、インジェクターには何もDependency
提供されていないため、エラーが発生することが予想されましたchild
。ただし、このコードを実行すると'A'
、ルート インジェクターからインジェクトされます。なんで?
angular - Angular 2 サービスをサービスに挿入する
私のアプリでは、いくつかのヘッダーを追加する独自の実装で Angular Http クラスを拡張しました。
次に、app.mobule.ts ファイルでこれを行ったので、基本バージョンの代わりに安全なバージョンが常に使用されます。
現在、私たちのサービスでは、標準のコンストラクター/DI アプローチを使用しています。
ここで私の問題は、JWT を取得するために必要な関数が 1 つあるため、SecurityService は Secure_Http クラス/サービスも注入する必要があることです。
しかし、コンストラクターのパラメーターとして Secure_Http クラス/サービスを追加するとすぐに、エラーが発生しますNo provider for Secure_Http
。
したがって、次に考えることは、app.module.ts ファイルの providers セクションに Secure_Http を追加することです。これは、Http が Secure_Http を使用する必要があると指定した場所のすぐ隣にあります。しかし、それを行うとすぐに、エラーが発生しますNo provider for ConnectionBackend
。向きを変えてプロバイダーに追加ConnectionBackend
すると、@NgModule にエラーが表示されますType 'typeof ConnectionBackend' is not assignable to type provider
。
ここでどこが間違っていますか?Secure_Http クラスに直接アクセスする必要があるメソッドが 1 つだけあります。これは、ポスト呼び出しの 1 つのパラメーターである必要があるため必要です。パラメータがすでに渡されているため、Secure_Httpサービス/クラスから呼び出すことはできません...