我一直在readingaboutes6 module loaders我只是不太明白它是如何工作的,我希望有人能够启发我。es6模块如何加载工作
在实际的工作流程链接上面,他们有这样的
System.import('app/app').then(function(app) {
// app is now the Module object with exports as getters
});
与没有问题的例子 - 我明白了。但后来我看到这样的东西
var $ = require('jquery');
并得到真正困惑。如果在这次调用时jquery还没有传输到浏览器会发生什么?线程是否旋转?浏览器是否在幕后解析你的脚本并将它改造成像RequireJs这样的回调?它是可配置的?有特定的限制吗?
有人可以给我一个破败?
您看到的第二件事是“CommonJS模块加载”,而不是ES6 afaik。它确实[在require.js中不工作(很好)](http://requirejs.org/docs/api.html#cjsmodule) – Bergi
@Bergi它在require.js中正常工作,而我不喜欢它我当前项目中的某些页面使用requirejs和commonjs风格。 Requirejs扫描脚本中的commonjs表达式并将其重写为amd格式,因此它仍然使用回调函数。但是,除非我错了,否则es6建议不会使用回调 - 因此我很困惑。 –
是的,除了最简单的情况外,扫描脚本并不适用于所有情况。你能链接你所说的ES6提案的部分吗? 'System.import'显然使用回调。 – Bergi