systemjs builder-为angular2捆绑rxjs

systemjs builder-为angular2捆绑rxjs,angular,rxjs,systemjs,systemjs-builder,Angular,Rxjs,Systemjs,Systemjs Builder,我有一个Angular2应用程序,在dev环境下运行良好。 所有Angular2依赖项在运行时从node_modules dir加载 我使用GulpTypeScript插件绑定应用程序代码,使用SystemJS绑定第三方库代码 这是绑定lib文件的gulp任务: 函数bundleLibs(){ 变量文件=[ “node_modules/rxjs/bundles/Rx.js”, 'node_modules/@angular/core/bundles/core.umd.js', 'node_modu

我有一个Angular2应用程序,在dev环境下运行良好。 所有Angular2依赖项在运行时从node_modules dir加载

我使用GulpTypeScript插件绑定应用程序代码,使用SystemJS绑定第三方库代码

这是绑定lib文件的gulp任务:

函数bundleLibs(){
变量文件=[
“node_modules/rxjs/bundles/Rx.js”,
'node_modules/@angular/core/bundles/core.umd.js',
'node_modules/@angular/forms/bundles/forms.umd.js',
'node_modules/@angular/common/bundles/common.umd.js',
'node_modules/@angular/compiler/bundles/compiler.umd.js',
“node_modules/@angular/platform browser/bundles/platform browser.umd.js”,
'node_modules/@angular/platform browser dynamic/bundles/platform browser dynamic.umd.js',
'node_modules/@angular/upgrade/bundles/upgrade static.umd.js'
];
var builder=new SystemJSBuilder('dist'{
地图:{
'rxjs':'node_modules/rxjs'
}
});
返回builder.bundle(文件'dist/js/lib.js');
}
我希望所有rxjs库都包含在输出文件中。 但当我运行应用程序时,我会得到404状态

node_modules/rxjs/Subject.js
node_modules/rxjs/Observable.js
(以及所有其他rxjs文件)

它有助于捆绑每个单独的rxjs文件:

var files = [
'node_modules/@angular/core/bundles/core.umd.js',
'node_modules/rxjs/Subject.js',
'node_modules/rxjs/Observable.js',
...
];
但我认为这不是一个好的解决办法

var builder = new SystemJSBuilder('./', {
      map: {
        'rxjs': 'node_modules/rxjs'
      },
      packages: {
        "rxjs": {main: "Rx.js", defaultExtension: "js"}
      }
    });
    return builder.bundle('rxjs', '.tmp/rxjs.js');
所以问题是,如何从rxjs库绑定所有需要的文件?
(Angular2需要)

我以以下解决方案结束

var builder = new SystemJSBuilder('./', {
      map: {
        'rxjs': 'node_modules/rxjs'
      },
      packages: {
        "rxjs": {main: "Rx.js", defaultExtension: "js"}
      }
    });
    return builder.bundle('rxjs', '.tmp/rxjs.js');
因此,我为angular2和rxjs创建了单独的包,然后将它们合并到一个库中。

也许可以看看这个