1 回答

TA貢獻(xiàn)1796條經(jīng)驗 獲得超4個贊
版本 58 不支持它。https://caniuse.com/#search=type%3D%22module%22
但是你可以使用nomodule
來兼容它。
nomodule 屬性是一個布爾屬性,可防止腳本在支持模塊腳本的用戶代理中執(zhí)行。這允許有選擇地執(zhí)行現(xiàn)代用戶代理中的模塊腳本和舊用戶代理中的經(jīng)典腳本,如下所示。nomodule 屬性不能在模塊腳本上指定(如果是,將被忽略)。
這是html.spec.whatwg.org的示例
這個例子展示了如何為現(xiàn)代用戶代理包含一個模塊腳本,為舊用戶代理包含一個經(jīng)典腳本:
<script type="module" src="app.mjs"></script> <script nomodule defer src="classic-app-bundle.js"></script>
在支持模塊腳本的現(xiàn)代用戶代理中,具有 nomodule 屬性的 script 元素將被忽略,具有“模塊”類型的腳本元素將被獲取并評估(作為模塊腳本)。相反,較舊的用戶代理將忽略具有“模塊”類型的腳本元素,因為這對他們來說是未知的腳本類型——但他們將毫無問題地獲取和評估其他腳本元素(作為經(jīng)典腳本),因為他們不要實現(xiàn) nomodule 屬性。
這意味著高于版本 61type=module
并且nomodule
受支持,則:
該腳本將在“模塊”類型的腳本元素中執(zhí)行。
該腳本不會在屬性為“nomodule”的腳本元素中執(zhí)行。
并且在低于 60 版本type=module
且nomodule
不受支持的情況下,則:
該腳本不會在類型為“模塊”的腳本元素中執(zhí)行,因為
type=module
它是瀏覽器的未知腳本類型。該腳本將在具有“nomodule”屬性的腳本元素中執(zhí)行,因為瀏覽器沒有實現(xiàn)“nomodule”屬性。
希望能幫到你。
添加回答
舉報