問題タブ [angular2-services]

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 投票する
1 に答える
4148 参照

typescript - Http.get で json 値を取得する

Angular2 で小さな例を作成しようとしていました。私がやっていることは、ボタンをクリックすると、パブリック API にアクセスして引用符が表示されますが、値が表示されず、エラーが発生することです。

[{{quote.contents.quotes.quote}} in App@4:20] で未定義のプロパティ 'quotes' を読み取れません

私のComponent.ts

私のboot.ts

索引.html

サービスのサブスクライブから値を取得してテンプレートに入れるにはどうすればよいですか?

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

javascript - Angular2: http.get レスポンスから配列要素を抽出する

Angular2 はとても楽しいです。(皮肉の終わり)

この特定のプランカーは、配列から特定の要素を抽出することに成功し、それを templateUrl に表示することができます。一般的に言えば、テンプレートにデータを表示するのは本当に簡単です。

残念ながら、それは私の問題ではありません。私がする必要があるのは、dataService / Injectable から値を取得し、それを変数に変換してから、その変数をチャート プログラムに渡すことです。基本的に、次のようなものが必要です。 console.log(last);

次に、この質問で説明したように、変数を取り、chartData に渡します。そのため、json からこの応答をキャプチャして変数に変換する必要があります。これはそれほど難しくないと思いますか?

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

typescript - 宣言を TRUE に設定すると Typescript エラーが発生する

私が取り組んでいるAngular 2プロジェクトのtypescript定義を作成して、エクスポート可能なライブラリにしようとしています。

http リクエストをコンポーネントに返すいくつかのサービス設定があり、すべて次のように非常によく似ています。

次に、コンポーネントから次のように呼び出します。

typescript定義ファイルを作成できるように、tsconfigファイルで「宣言」をtrueにするまで、これはすべて正常に機能します。いくつかのサービスで次のエラーが発生し始めます。

私は問題をほとんど理解していますが、解決策がわかりません。Observable をサービスにインポートすると、技術的にはそのファイルで使用されていないため、typescript リンターはエラーをスローします。

Angular 1 から来て、これはすべてのアプリでコードを分割するために採用した同様のパラダイムでしたが、Angular 2 ではアプローチを変更する必要があるのでしょうか? 私は他の多くの Angular 2 の例を見てきましたが、それらはすべて同様の方法でそれを行っています。

0 投票する
3 に答える
9899 参照

typescript - サービスで使用するためにページ/グローバル変数をAngular2アプリに渡します

ここでいくつかのベストプラクティスを探しています。私の angular2 アプリは、既存のコンテンツ管理システム内に存在します。その結果、この CMS によって生成されたいくつかの「変数」(認証トークンなど) を取得し、それらを angular2 アプリ内の http 要求で使用する必要があります。

index.html ページが CMS によって表示されると、ページがブラウザーに送信される前に、CMS によって事前に解析され、一部のトークン ([ModuleContext:ModuleId]) が置き換えられます。

これが私のindex.htmlページの例です(省略):

具体的には、有効な http web.api リクエストを生成するために $.ServicesFramework が使用されます。これを、それを使用する各コンポーネントに注入できるサービスに取り込みたいと考えています。

たとえば(私はタイプスクリプトを使用しています):

1 つの問題は、typescript コンパイラが "$" などを見つけることができないというエラーをスローすることです。次のように、typescript クラス宣言の前に declare を使用して、これを強制的に機能させることができます。

質問:

これらの「グローバル」変数をキャプチャして、適切にスケーリングするアプリで使用するためのより良い方法 (存在する場合) は何ですか。


編集 - RC6 に更新

私はRC6で作業するために以下を使用しました:

0 投票する
3 に答える
33154 参照

typescript - Angular2 - サービスを使用してコンポーネント間でデータを共有する

コンポーネント間で Angular2 アプリに共有したいオブジェクトがあります。

最初のコンポーネントのソースは次のとおりです。

および 2 番目のコンポーネント:

そして最後に、私の小さなサービスである ConfigService:

私のデータは共有されていません.grid.component.tsでは、_configService.getConfig()行は空のオブジェクトを返しますが、app.component.tsの直前に入力されています.

ドキュメントとチュートリアルを読みましたが、何も機能しませんでした。

何が欠けていますか?

ありがとう

解決した

私の問題は、ConfigService を 2 回注入していたことです。アプリケーションのブートストラップと、それを使用しているファイル内。

設定を削除したところproviders、うまくいきました!

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

jasmine - Angular 2 で http リクエスト URL をテストする正しい方法

Angular 2 を使用して、いくつかのサービスをセットアップしました。内部の各メソッドは、次のような異なる http リクエストを返します。

この方法をテストしたいと思います。リクエスト URL、ヘッダー、およびユーザーをテストしています。私は URL 部分に少し行き詰まっています。実際の URL をテストすることはできますが、それが GET、POST などであるかどうかをテストする方法がわかりません。Angular 1 では、expectGET や expectPOST などを使用しました。これは私がこれまでにやっている方法です:

リクエストのタイプを取得する方法はありますか? それとも、私はそれを間違っていますか?

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

angular - Angular 2 のブートストラップ プロセス

ページの読み込み時にアプリケーションをブートストラップするために、Angular 2 でブートストラップ メソッドを呼び出す前に AJAX リクエストを作成したいと考えています。

Angular を使用してこれを行うためにリッスンできるフックはありますか? バニラのjavascript ajaxリクエストでラップできることはわかっていますが、Angular 2でこれを行う標準的な方法があると思いました.Angular 2アプリをスピンアップする前に、サーバーから構成ファイルを取得する必要があります.

0 投票する
4 に答える
31324 参照

typescript - Angular 2 HTTP「「AppService」のすべてのパラメーターを解決できません」

http プロバイダーをサービスにインポートしようとしましたが、次のエラーが発生します。

「AppService」(?) のすべてのパラメーターを解決できません。すべてのパラメーターが Inject で装飾されているか、有効な型注釈があり、「AppService」が Injectable で装飾されていることを確認してください。

以下にいくつかのコード スニペットを示します。

boot.ts

app.service.ts

サーバーでコントローラーを呼び出して、最終的に JSON ファイルをデータ テーブルにロードしようとしています。非常に簡単なことですが、Http モジュールをロードする方法が間違っているようです。どんな助けでも大歓迎です。