問題タブ [angular2-providers]

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.

0 投票する
2 に答える
1459 参照

javascript - angular2にJavascriptライブラリをグローバルにインポートする方法

angular2にmoment.jsライブラリをインポートしようとしています。次の解決策を見つけました:

ただし、これをすべてのコンポーネントにインポートしたくはありません。すべてのコンポーネントで使用できるようにグローバルに注入する方法はありますか?

0 投票する
1 に答える
564 参照

angular - Angular 2 angular2.dev.js:23925 例外: エラー: キャッチされていません (約束されています): プロバイダーがありません

構成ファイル (datService.configuration) を持つ Angular サービス (DataService) をコンポーネント (ホーム) にロードしようとしています。Home コンポーネントで、DataServiceConfiguration をプロバイダー リストに追加しないと、次のエラーが発生します。

「キャッチされていない (約束): DataServiceConfiguration のプロバイダーがありません! (ホーム -> DataService -> DataServiceConfiguration)」

dataService.ts:

dataService.configuration.ts:

ホーム.ts

DataService が既に読み込まれているため、ホーム コンポーネントに DataServiceConfiguration を追加する必要がある理由がわかりません。コンポーネントに DataService のみを追加する方法はありますか?

0 投票する
2 に答える
1096 参照

angular - サービスのプロバイダーがありません

2.0.0-beta.17 を使用して angular2 に入ろうとしています。サービスからデータを読み取りたいのですが、何をしても例外が発生します。

ここで何十もの同じ質問をしましたが、どれもうまくいきませんでした。

これは私のサービスクラスです:

言語は単純な typescript クラスであり、最終的に Web サービス呼び出しから取得されることになっていますが、私はそれほど遠くありません。

LanguageService は LanguageBrowser コンポーネントによって消費されます

LanguageCollection は、言語のリストを取得し、リスト内の言語の 1 つを選択するとイベントを発行する別のコンポーネントです。LanguageDetail は、選択された言語を表示するだけです。どちらも無関係なので (私は推測します)、ここではそれらを除外します。

別の回答が示唆したように、スクリプトに含まれる system-polyfills.js と es6-shim.js を追加しましたが、役に立ちませんでした。これは私のレイアウトの関連部分です:

ブートすると、次のようになります。

そして AppComponent は次のようになります:

私のpackage.jsonの依存関係:

npm のインストールで、angular2 が Reflect-metadata と rxjs の peerDependencies を必要としていると言われたので、単純にそれらを peerDependencies として含めました。また、変更なしで通常の依存関係としてそれらを持っていました。

明らかに何かが欠けていますが、それが何であるかを見つけることができません。angular2 のいくつかのチュートリアルを実行しましたが、どれもうまくいきませんでした。

0 投票する
1 に答える
4014 参照

javascript - Angular 2 の Service クラスにプロバイダーを追加するにはどうすればよいですか?

サービスを使用するコンポーネントがあります。コンポーネントは次のようになります。

ご覧のとおりHTTP_PROVIDERS、コンポーネントにプロバイダーを追加しました。DIがhttpクラスを認識しているため、これは機能しました。ただし、クラスTestServiceを実際に使用していたのは my ではなく、 my でした。HttpTestComponent

Httpクラスを使ったサービスなので、プロバイダ自体を含めたものであるべきだと感じました。TestComponentプロバイダが何TestServiceを必要とするかはわかりません。

サービス クラスにはそのコンポーネント デコレータがないため、実際にプロバイダを追加する方法がわかりません。Serviceプロバイダーをクラスに追加するにはどうすればよいですか?

0 投票する
2 に答える
53 参照

javascript - これらの 3 つの Angular2 コマンドは何をインポートしていますか?

このサンプルアプリを使って ES6 JavaScript で Angular2 を勉強しています。具体的には、アプリ全体のルート JavaScript ファイル ( boot.js ) から始まる依存関係のチェーンをマッピングしようとしています。 次の3行でインポートされているものを正確に説明してくださいboot.js

'./app/core'上記の GitHub リンクの、'./app/auth'、およびディレクトリに移動すると、これらのディレクトリにネストされたファイルが非常に多く、上記の 3 つのコマンドによって 3 つの変数'./app/posts'に正確に何が渡されているのかわかりません。..._PROVIDERS他の誰かがこれを説明してもらえますか?

完全なコードboot.jsは次のとおりです。