javascript - 如何让 ES6/2015 导入/模块在浏览器中工作?

标签 javascript ecmascript-6 es6-module-loader es6-modules

我似乎无法获取ES6/2015 imports上类。来自 this Understanding ECMAScript 6 book ,我知道我需要写我的 <script>带有 type 的标签modules 的属性:

<script type="module" src="module.js"></script>

然后我可以使用import module.js内。但是,它不适用于最新的 Firefox (v48.0.1) 和 Chrome (v53.0.2785.89)。当我输入 console.log 时,控制台没有记录任何内容module.js中的声明.

如何在浏览器中使用 ES2015 的导入机制(原生不使用 babel/webpack 之类的东西)?

更新:看起来像 Microsoft's Edge browser supports modules ,至少在实验模式下是这样。为什么其他浏览器还没有支持它,至少在实验模式下是这样?

最佳答案

你不能。语法和契约已在 ECMAScript 规范中定义,但在任何主要运行时中均不存在实现。

直到某些平台提供内置的 System 对象和关联的模块加载,您才会陷入 Webpack 或类似于 polyfill 的困境。

虽然这看起来像是浏览器方面的一个重大遗漏,但该功能很容易进行填充。

关于javascript - 如何让 ES6/2015 导入/模块在浏览器中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39356990/

相关文章:

javascript - lodash 构造函数的正确导入是什么?

javascript - Safari DP导入ES2015模块需要文件扩展名

javascript - (这个)在脚本中不起作用

javascript - 单击按钮即可检查多个复选框列表

javascript - underscorejs 唯一不起作用

javascript - 我需要 GridView 的水平滚动

javascript - 基于 process.env.NODE_ENV 的条件导出 ES6 模块的可能性?

javascript - 在对象字面量内声明空 es6 Set

javascript - 哪些浏览器支持 ECMAScript 6 的导入和导出语法?