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中文網其他相關文章!