ES6的module是同步的还是异步的?如果是同步的,是不是意味着永远无法在浏览器里使用原生的ES6 module特性了?

从写法上来看是同步的,这是否意味着没法在浏览器上使用原生的module特性了呢?

阅读 9.2k
2 个回答

我想我们先看看文档

其中两个部分值得一看

Image

Image

我粗粗谈下,ES6规范仅描述语法部分,但这个语法部分,对同步/异步编程都是良好的。 至于最后在运行时是同步还是异步实现,那取决于文档里提到的loader api

如果你用过webpack + babel的话,webpack有的是bundle路线,都打包在一起了,自然是同步的

那如果你写过angular2,按照官网文档使用System.js,那会发现所有模块又是运行时异步加载的。

你看,这不就是"取决于loader api"么

你无法从语法上看出是同步还是异步

语法与实现无关

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏