[解決済み] Angularチュートリアルのpipeメソッドとtapメソッドとは何ですか?
2022-04-26 14:31:10
質問
でのチュートリアルにしたがっています。
https://angular.io
というメソッドについて、ドキュメントを見つけるのに苦労しています。
pipe
と
tap
. については、何も見つかりません。
https://angular.io
または
http://reactivex.io/rxjs/
.
私の理解では
pipe
と
tap
は、いずれも
Observable
は、RxJSからインポートされているのですよね?これらは何をするものなのでしょうか?
これらのメソッドはAngularの一部ですか?これらの2つのメソッドは何をするのですか?
どのように解決するのですか?
おっしゃるとおり、ドキュメントにはそのようなメソッドはありません。しかし、私はrxjsリポジトリに掘ったとき、私はについての素晴らしいコメントを見つけました。 タップ (長くてここに貼れない)と パイプ 演算子を使用します。
/**
* Used to stitch together functional operators into a chain.
* @method pipe
* @return {Observable} the Observable result of all of the operators having
* been called in the order they were passed in.
*
* @example
*
* import { map, filter, scan } from 'rxjs/operators';
*
* Rx.Observable.interval(1000)
* .pipe(
* filter(x => x % 2 === 0),
* map(x => x + x),
* scan((acc, x) => acc + x)
* )
* .subscribe(x => console.log(x))
*/
概要
パイプ
: 機能演算子をチェーン状につなぎ合わせるために使用します。以前は
observable.filter().map().scan()
しかし、RxJSの演算子はObservableのメソッドではなく、独立した関数であるため、この演算子には
pipe()
を使用して、これらの演算子の連鎖を作ります(上記の例参照)。
タップ
: 観測されたデータでサイドエフェクトを行うことができるが
を変更することはありません。
ストリームをどのような形であれ 以前は
do()
. observable が時間軸の配列であるかのように考えることができ、次に
tap()
と等価である。
Array.forEach()
.
関連
-
[解決済み] formGroup' は 'form' の既知のプロパティではないため、バインドできません。
-
[解決済み] Angular 2+でngShowとngHideに相当するものは何ですか?
-
[解決済み] オブジェクトのキーと値に*ngForでアクセスする
-
[解決済み] 最後のページに戻るには
-
[解決済み] 例外が発生しました。既知のネイティブプロパティではないため、'ngFor'にバインドできない
-
[解決済み】PromiseとObservablesの違いは何ですか?
-
[解決済み】Angular CLIが生成する「spec.ts」ファイルは何のためにあるのか?
-
[解決済み] Angular + Material - データソース(mat-table)を更新する方法
-
[解決済み] The Angular Compiler requires TypeScript >=3.1.1 and <3.2.0 but 3.2.1 found insteadでエラーが発生しました。
-
[解決済み] prodのバンドルサイズを小さくするには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ルーターリンク]と[ルーターリンク]の違いについて
-
[解決済み] Angular 2の "select "で新しい選択範囲を取得するにはどうすればよいですか?
-
[解決済み] 予算内の警告、初期値で最大値を超える
-
[解決済み] 例外が発生しました。既知のネイティブプロパティではないため、'ngFor'にバインドできない
-
[解決済み】コンポーネントのプロパティが現在の日付時間に依存している場合、Angular2の「expression has changed after it was checked」例外を管理する方法
-
[解決済み】Angular 2 - innerHTML スタイリング
-
[解決済み] Angular 4 HttpClient クエリパラメータ
-
[解決済み] AngularのINPUT要素でngModel内のパイプを使用する
-
[解決済み] AngularプロジェクトでBootstrapを使うには?
-
[解決済み] Angular 2のテンプレートでlet-*とは何ですか?