3

以前は、次のコードで使用済みの演算子のみをインポートできました。

import 'rxjs/Observable';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/mergeMap';
import 'rxjs/add/operator/catch';
import 'rxjs/add/operator/finally';
import 'rxjs/add/observable/empty';
import 'rxjs/add/observable/throw';

これにより、小さなバンドル (vendor.ts) が生成されます。
rxjs-compatを必要とせずにRxJSでこれを行うには?
上記のコードを変更してimport 'rxjs';、より大きなバンドルを生成します。

アップデート:

あなたが投稿したすべての回答に従いましたが、何もうまくいきません。これは私の更新された vendor.ts です:

import 'rxjs/Observable';
import 'rxjs/Subscription';
import 'rxjs/Subject';
import 'rxjs/observable/throw';
import 'rxjs/operators/map';
import 'rxjs/operators/mergeMap';
import 'rxjs/operators/catchError';
import 'rxjs/operators/finalize';

「rxjs/add/operator/*」も使ってみました。

これは私がrxjsをインポートする方法です:

import {Observable} from 'rxjs/Observable';
import {Subscription} from 'rxjs/Subscription';
import {Subject} from 'rxjs/Subject';
import {_throw} from 'rxjs/observable/throw';
import {map} from 'rxjs/operators/map';
import {mergeMap} from 'rxjs/operators/mergeMap';
import {catchError} from 'rxjs/operators/catchError';
import {finalize} from 'rxjs/operators/finalize';   

このドキュメント ( https://github.com/ReactiveX/rxjs/blob/master/doc/pipeable-operators.md#build-and-treeshaking )に従って Webpack 3 の構成を変更しましたが、何も機能しません。

最後に、Webpack Bundle Analyzer の結果を見てください。

ここに画像の説明を入力

バンドルにはすべてのオペレーターが含まれます。この関連する問題を見つけました: https://github.com/angular/angular-cli/issues/9069

4

4 に答える 4