[英]es6 import using.mjs suffix fails with MIME error
在最新的Chrome浏览器中
import foo from '../dist/foo.mjs'
失败了
无法加载模块脚本:服务器使用非JavaScript MIME类型“”进行响应。 对每个HTML规范的模块脚本强制执行严格的MIME类型检查。
但是如果我将文件复制到foo.js
import foo from '../dist/foo.js'
作品!
我正在使用带有localhost路径和最新chrome的mac os x内置Apache服务器。
所以es6导入在浏览器中对于.mjs的首选节点后缀很敏感。
导入是在一个带有<script type="module">
的html文件中,而不是单独的模块文件,但我怀疑这是问题所在。
有针对这个的解决方法吗?。
您需要使用以下htaccess指令来发布.htaccess
文件或扩展Apache配置文件,以便服务器输出具有正确MIME类型的mjs扩展名的文件:
<IfModule mod_mime.c>
AddType text/javascript js mjs
</IfModule>
当然,需要安装并启用mod_mime
才能使其正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.