私はまだ働いていたthis.route.params.first()
を使用して、しかしimport 'rxjs/add/operator/first';
角度CLI rxjsオペレータの輸入
を追加したことはありません。どうして?
すべてのファイルに多くの演算子をインポートする必要はありませんか?
import 'rxjs/add/operator/first';
よう
私はまだ働いていたthis.route.params.first()
を使用して、しかしimport 'rxjs/add/operator/first';
角度CLI rxjsオペレータの輸入
を追加したことはありません。どうして?
すべてのファイルに多くの演算子をインポートする必要はありませんか?
import 'rxjs/add/operator/first';
よう
輸入はObservable
プロトタイプにパッチ演算子を参照してください。 the sourceを参照してください。
このようなインポートは、ファイルごとに行う必要はありません。それらは一度だけインポートする必要があります。その後、オペレータはプロトタイプを介して呼び出し可能です。
また、インポートしている別のライブラリでそのインポートを使用すると、プロトタイプにパッチが適用され、演算子が使用可能になります。このため、Angularのようなライブラリの中には、プロトタイプにパッチを当てずに演算子を明示的にインポートするものがあります。この方法では、クライアントコードは、Angularによって実装されたプロトタイプパッチインポートに依存しません。また、Angular内のインポートはクライアントコードを破ることなく削除できます)。
様々なインポートメカニズムthe docs。
また、以前は、こうした種類のRxJSインポートを管理するための一連のTSLintルールを公開していました。https://github.com/cartant/rxjs-tslint-rules – cartant