【发布时间】:2015-05-04 14:49:30
【问题描述】:
我如何延迟加载 ES6 模块? 懒惰,我的意思是我不想实际加载不需要的模块。例如,我可以用 RequireJS 做一些事情:
function someEventHandler() {
var SomeModule = require('some-module'),
module = new SomeModule();
// ...
}
使用 ES6 导入似乎无法实现相同的思路:
// Doesn't appear to be valid...
function someEventHandler() {
import SomeModule from 'some-module';
var module = new SomeModule();
// ...
}
是否有任何可行的技术仅在需要时使用 ES6 模块来引入依赖项?或者是跟踪完整依赖图并预先获取所有内容的唯一途径?
【问题讨论】:
-
您必须使用系统加载程序 API。见Dynamic module import in Ember CLI
-
不,不可能使用
import语法。但是,您可以使用require函数的异步(!)等效项。
标签: javascript import module lazy-loading ecmascript-6