ホームページ  >  記事  >  ウェブフロントエンド  >  ES2015 インポート宣言が最上位レベルにあるにもかかわらず、Firefox で失敗するのはなぜですか?

ES2015 インポート宣言が最上位レベルにあるにもかかわらず、Firefox で失敗するのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-23 00:54:03191ブラウズ

Why Do ES2015 Import Declarations Fail in Firefox, Despite Being at the Top Level?

ES2015 インポート宣言がトップレベルでも Firefox で機能しない

ユーザーがブラウザーの HTML ファイルで ES2015 インポート宣言を利用しようとしている-ベースの JavaScript モジュールが Firefox 46 で特有のエラーに遭遇しています。「SyntaxError: import 宣言はモジュールの最上位レベルでのみ表示される可能性があります」というエラー メッセージは、import ステートメントがスクリプト ファイルの先頭に配置されていることを考えると不可解に思えます。 .

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。