簡體   English   中英

es6 import using.mjs后綴因MIME錯誤而失敗

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM