将动态ES6 System.import映射到ES5(amd或其他)

时间:2015-04-09 14:40:11

标签: javascript ecmascript-6 amd code-translation systemjs

我通过以下方式调用动态请求es6模块:

System.import('SOME_PATH').then(function (MODULE_FROM_SOME_PATH) {});

它适用于浏览器中的es6-module-loader和babel运行时编译,但是当我想将其预编译为ES5语法(用于生产用途)时,它只是在代码中传递System.import表达式,离开时几乎不受影响,只需将System.import替换为等效System['import']

我已尝试过gulp-babel和babel npm套餐。所以当在浏览器中打开时,它会给出预期的模块加载错如何将我的代码转换为AMD的{​​{1}}语法。希望得到你的帮助。

1 个答案:

答案 0 :(得分:0)

只需将System.import替换为等效UMD导入的babel-plugin-system-import-transformer(AMD,CommonnJS& Global模块导入)。

我还创建了一个使用System.import语句作为示例的separate localforage branch

希望这有帮助。