ES2015 导入声明在 Firefox 中不起作用,即使在顶级
尝试在浏览器的 HTML 文件中使用 ES2015 导入声明的用户基于 JavaScript 的模块在 Firefox 46 中遇到了一个特殊的错误。错误消息“SyntaxError:导入声明可能只出现在模块的顶层”似乎令人费解,因为导入语句位于脚本文件的最开头.
Firefox 对显式模块声明的要求
Firefox 中的错误源于浏览器默认情况下未启用 ES2015 模块支持。要通过导入和导出使用模块,您必须通过将“type=module”属性添加到导入模块的脚本标记来明确表明您正在使用模块。
例如,问题应修改如下:
<code class="html"><script src="t1.js" type="module"></script></code>
此修改向 Firefox 澄清该脚本是一个模块,允许导入声明正常运行。
浏览器对 ES2015 模块的支持
浏览器中的 ES2015 模块支持仍然相对较新,并且在不同浏览器和版本之间存在差异。以下表格总结了浏览器对 ES2015 导入/导出功能的支持:
Browser | Version | Support |
---|---|---|
Firefox | 60 | Fully supported |
Chrome (desktop) | 65 | Fully supported |
Chrome (android) | 66 | Fully supported |
Safari | 1.1 | Fully supported |
Older Browsers | Varies | May require enabling experimental flags |
如果您使用的是较旧的浏览器或没有内置模块支持的版本,您可能需要启用实验标志来激活此功能特征。具体标志和说明因浏览器而异。
以上是为什么 ES2015 导入声明在 Firefox 中失败,尽管处于顶层?的详细内容。更多信息请关注PHP中文网其他相关文章!