Chrome 拡張機能: コンテンツ スクリプトで ES6 モジュールをインポートする
<p><strong>Chrome 61</strong> では、JavaScript モジュールのサポートが追加されました。現在Chrome 63を実行しています。 </p>
<p><code>import</code>/<code>export</code> 構文を使用して、Chrome 拡張機能コンテンツ スクリプトでモジュールを使用しようとしています。 </p>
<p>In<strong><code>manifest.json</code></strong>:</p>
<pre class="brush:php;toolbar:false;">"content_scripts": [
{
"js": [
「コンテンツ.js」
]、
}
]</pre>
<p>In<strong><code>my-script.js</code></strong> (<strong><code>content.js</code></strong> と同じディレクトリ):</p>
<pre class="brush:php;toolbar:false;">'厳密に使用';
const injectFunction = () => window.alert('hello world');
デフォルトの injectFunction;</pre> をエクスポートします。
<p>In<strong><code>content.js</code></strong>:</p>
<pre class="brush:php;toolbar:false;">'厳密に使用';
'./my-script.js' から injectFunction をインポートします。
injectFunction();</pre>
<p>次のエラーが発生します:<strong><code>キャッチされない構文エラー:予期しない識別子</code></strong></p>
<p>インポート構文を <code>import {injectFunction} from './my-script.js';</code> に変更すると、次のエラーが発生します: <strong><code>Uncaught SyntaxError : 予期しないトークン {</code></strong>< /p>
</p><p>Chrome 拡張機能の <strong><code>content.js</code></strong> でこの構文を使用すると問題はありますか (HTML では <を使用する必要があるため) ;コード>
<script type="module" src="script.js "></code> 構文)、それとも何か間違っているのでしょうか? Google が拡張機能のサポートを無視しているのは奇妙に思えます。 </p></script>
</code></p>