es6 模块原生支持

es6 modules native support

我了解ES6模块规范,问题是关于它的支持。 AFAIK,没有浏览器在本机实现此功能(请参阅 浏览器兼容性 here)。对此有几个问题:

ES6 modules is an ES6 feature, obviously. When I look at kangax compatibility table, I don't see such row (for ES6 modules) at all, why is that?

kangax 的 github 上有 an issue being discussed

the only way to use ES6 right now is to use a build tool, such as babel, browserify or any other aternative, right?

没有。 http://github.com/ModuleLoader/browser-es-module-loader 上还有 Guy Bedford 的 polyfill。

并且已经有原生实现它的 Edge 预览版。

how are the modules gonna be fetched, when they're natively supported - as async AJAX calls from the browser?

是但不完全是:它们将在第一次使用时通过调用导入库上的对象(函数或 属性)来获取。

本机模块在以下浏览器版本中可用:

  • 野生动物园 10.1
  • Chrome Canary 60 – 实验性 Web 平台背后 chrome:flags.
  • 中的标志
  • Firefox 54 – 在 about:config 中的 dom.moduleScripts.enabled 设置之后。
  • 15 边 – 落后 about:flags 中的实验性 JavaScript 功能设置。

source