angular 2 System.import问题

时间:2017-03-16 15:30:01

标签: angular webpack

我的代码适用于SystemJS。 现在我将我的angular 2项目移动到webpack并且System.import失败了。

任何想法?谢谢!

private loadBundles(fullBundlesFilePath:any, callback?: any) {
        System.import(fullBundlesFilePath).then((bundles:any) => {
            bundles.forEach((bundleUrl:any) => this.loadBundle(bundleUrl, callback));
        });
    }

要加载的文件的内容是

module.exports = function () {
    return [
        '/explorerweb_bundles/login/manifest.js',
        '/explorerweb_bundles/printers/manifest.js' 
    ];
}() ;

1 个答案:

答案 0 :(得分:0)

无法在webpack中传递要导入的变量。 Webpack需要知道在编译时要包含在bundle中的模块,因为没有程序流分析,它不知道要包含哪些模块。另外import不需要数组,只需要一个模块。所以你需要手动完成,如下所示:

System.import('/explorerweb_bundles/login/manifest.js').then(module => /*...*/);
System.import('/explorerweb_bundles/printers/manifest.js').then(module => /*...*/);

在旁注System.import is deprecated上赞成import()