問題タブ [angular2-observables]

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 に答える
2313 参照

angularjs - angular 2 observable.subscribe は、2 回目に呼び出されるまで実行されません

このコンポーネントに、オブザーバブルを返すサービスから文字列データを取得させようとしています

以下は簡単なサービスです。

サービスを @NgModule() のプロバイダーとしてリストし、すべてのコンポーネント インスタンスで共有できるようにします。TabFourComponent のルーターもあるため、そこに移動するたびに、コンソールに「testing observable」が表示されます。しかし、getItems() を 2 回呼び出すまで表示されませんでした。なぜ最初にトリガーされなかったのだろうか。

編集:

サービスが http.get からデータを提供する別のケースでは、

コンポーネントは、サブスクリプション後にサービスのメソッドを再度呼び出す必要はありません。

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

angular - timer.unsubscribe はAngular2の関数ではありません

シンプルなタイマーを作ろうとしましたが、何らかのif条件でそれを壊す必要があります。しかし、常にエラーが発生しましEXCEPTION: timer.unsubscribe is not a functionた。

私は何を間違っていますか?

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

angular - ブール値を返す関数で retryWhen を使用する方法は?

これが私のコードです:

ここで、例外をキャッチして、再試行する必要がある場合にresponseErrorProcess()返される my に渡す必要がありますtrue

から例外を取得する方法がわかりませんでしたerrors。これは次のようになります。

発生した例外に関するエラーは含まれていないようです。さらに、実際に再試行するかどうかを判断するために何を返せばよいかわかりませんでした。

0 投票する
0 に答える
111 参照

angular - Angular 2 Observable JWT ヘッダーの問題

私は奇妙な問題を抱えています。ログインに成功してから JWT を保存する必要があります。その後、新しいヘッダーを使用して別の HTTP リクエストを作成する必要があります。これには、ユーザーの詳細を取得するための認証として JWT が含まれます。残念ながら、私の 2 番目の HTTP リクエストでは、JWT がありません。どんな助けでも大歓迎です。

以下は私のコードです

API サービス

ログイン コンポーネント

ログインサービス

ユーザーサービス

国家サービス

JWT が 2 番目のリクエストのヘッダーに追加されません。

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

angular - angular2コンポーネントのテスト中に監視可能なストリームをモックする方法は?

angular2 コンポーネントのテスト ケースを作成しています。

以下のように、観測可能なストリームを使用するサービスを作成しました。

今、私のコンポーネントでは、このストリームを次のようにサブスクライブしています:

ここで、spec.ts ファイルで、このストリームを次のようにモックします。

しかし、それは私に次のエラーを与え続けます:

エラー: spyOn は、selectColumn$() に対してスパイするオブジェクトを見つけることができませんでした

これを行う方法はありますか?

私はこの問題に非常に長い間立ち往生しています。

入力はありますか?

ありがとう

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

http - Angular 2 ネストされたオブザーバブルを作成する方法

httpService を記述しようとしています。認証トークンを含む Cookie が存在するかどうかを確認するポスト メソッドが必要です。存在する場合は、認証ヘッダーを追加してポスト リクエストを行う必要があります。

ただし、Cookie が存在しない場合は、トークンを含むローカル json ファイルを読み込み、それを使用して Cookie を作成し、認証ヘッダーを追加して投稿要求を行う必要があります。

私が抱えている問題は、Cookie が存在しない場合、オブザーバブルを別のオブザーバブルを待機させる必要があることです。解決策はswitchMapを使用することだと思っていましたが、http.postリクエストを初期化するために必要な.subscribeではうまくいきません。

更新: これが奇妙になるのは、多かれ少なかれ正確なゲーム コードが get 要求で正しく動作することです。

解決策: httpService.post オブザーバブルにサブスクライブしていなかったので、初期化されていませんでした。

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

angular - Angular 2 Observables と Http の「未定義」

angular 2でhttpでオブザーバブルを使用するのは本当に難しいと思います。以下のコードでは、in method:値がコンソールに正常に出力されます。しかし、印刷しようとしたときですMain:undefined

から値を取得するにはどうすればよいMainですか?

テンプレート コード:

コンポーネントコード: