2017-02-03 19 views
1

私は角度2アプリを持っています。rxjsをAngular 2で1つのファイルとして読み込む方法は?

systemjs.config.js:

System.config({ 
     paths: { 
      'npm:': "libs/" 
     }, 
     map: { 
      'rxjs': "npm:rxjs" 
     } 
    }); 

コンポーネント:

import { Component, OnInit } from '@angular/core'; 
import { Observable } from 'rxjs/Observable'; 
import { Subject } from 'rxjs/Subject'; 
import 'rxjs/add/operator/catch'; 
import 'rxjs/add/operator/map'; 

@Component({ 
    selector: 'test', 
    templateUrl: './app/test.component.html' 
}) 
export class TestComponent implements OnInit { 
    constructor(...) { } 

    ngOnInit() { ... } 
} 

そして、ゴクゴクコピー "のlibs" フォルダにはすべて、 "node_modules/rxjs" からファイルをJS。私は上のsystemjs.config.jsを変更した場合は

私はrxjsから約100の要求のために、ブラウザのコンソールで(merge.js、fromEvent.js、toPromise.js、...)

を参照してください。

'rxjs': "npm:rxjs/bundles/Rx.min.js" 

私はそのように、エラーを参照してください。

localhost/libs/rxjs/bundles/Rx.min.js/operator/toPromise.js Failed to load resource: the server responded with a status of 404 (Not Found) 

それはパフォーマを改善するために私を助けていますnode_modules/rxjs/bundles/Rx.min.jsのみを使用するかどうかを指定します。

その1つのファイルを使用するにはどうすればよいですか?

+0

は多分これはあなたを助けることができるhttp://stackoverflow.com/questions/40780363/systemjs-loads-many-files-for-rxjs/40788204#40788204 – martin

+0

また、このhttps://github.com/systemjs/systemjs/issues/1039ですが、使用しているSystemJSのバージョンによって異なります。 – martin

+0

私は "undefined(router.umd.min.js:8)のプロパティ 'call'を読むことができません"というエラーがあります。そして、ローカルJsファイルRx.min.jsをcdnの代わりに使用したいのですが? –

答えて

0

このSystemJS設定は、プロジェクトでRxJSを使用するときに機能するはずです。

System.config({ 
    transpiler: 'typescript', 
    typescriptOptions: { 
    emitDecoratorMetadata: true 
    }, 
    packages: { 
    '.': { 
     defaultExtension: 'ts' 
    }, 
    'vendor': { 
     defaultExtension: 'js' 
    } 
    } 
}); 

System.config({ 
    map: { 
    'main': 'main.js', 

    /* ... */ 

    // Rxjs mapping 
    'rxjs': 'https://unpkg.com/rxjs', 
    }, 
    packages: { 
    // Thirdparty barrels. 
    'rxjs': { 
     main: 'index' 
    }, 
    } 
}); 
+0

そして、もし私がcdnではなく、ローカルでダウンロードしたパッケージ "rxjs"を使用したいのであれば? –

関連する問題