这与以下问题不是同一个问题Google Chrome 扩展开发中的 ES6 模块(意外标记) https://stackoverflow.com/questions/36796191因为这已经过时并且已经得到解答。
谷歌发布了一份新闻稿,声称 Chrome 支持 ES6 模块。我正在尝试从扩展中加载模块。我可以从普通页面中加载模块,但不能从扩展中加载模块。
这是 html,这是扩展上下文中的页面:
<script src="test.js" type="module"></script>
当我打开页面时,我在控制台中看到以下错误消息:
无法加载模块脚本:服务器响应非 JavaScript MIME 类型“”。根据 HTML 规范对模块脚本强制执行严格的 MIME 类型检查。
有人有建议吗?这是应该向 Chrome 报告的错误吗?或者只是还不支持?我找不到任何简单的解释。
正如用户 wOxxOm 在评论中提到的,请参阅https://crbug.com/738739 https://crbug.com/738739.
2017 年 9 月 18 日更新:https://bugs.chromium.org/p/chromium/issues/detail?id=769012 https://bugs.chromium.org/p/chromium/issues/detail?id=769012看起来正在修复!
2017 年 10 月 19 日更新:https://bugs.chromium.org/p/chromium/issues/detail?id=728377#c18 https://bugs.chromium.org/p/chromium/issues/detail?id=728377#c18据报道在 chrome 64 中工作(目前为 canary)
2017 年 11 月 13 日更新:最终更新,在 Chrome 63 中测试,模块现已正常工作。请注意,如果您需要在扩展的后台页面加载模块,则无法通过manifest.json中的scripts属性来完成,而是将page设置为background.html,并在script标签中指定type module,这将绕过明显的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)