首页  >  问答  >  正文

Chrome 扩展:在内容脚本中导入 ES6 模块

<p>在 <strong>Chrome 61</strong> 中,添加了对 JavaScript 模块的支持。现在我运行的是 Chrome 63。</p> <p>我正在尝试在 Chrome 扩展内容脚本中使用 <code>import</code>/<code>export</code> 语法来使用模块。</p> <p>在<strong><code>manifest.json</code></strong>中:</p> <pre class="brush:php;toolbar:false;">"content_scripts": [ { "js": [ "content.js" ], } ]</pre> <p>在<strong><code>my-script.js</code></strong>中(与<strong><code>content.js</code></strong>同一目录):</p> <pre class="brush:php;toolbar:false;">'use strict'; const injectFunction = () => window.alert('hello world'); export default injectFunction;</pre> <p>在<strong><code>content.js</code></strong>中:</p> <pre class="brush:php;toolbar:false;">'use strict'; import injectFunction from './my-script.js'; injectFunction();</pre> <p>我收到此错误:<strong><code>未捕获的语法错误:意外的标识符</code></strong></p> <p>如果我将导入语法更改为 <code>import {injectFunction} from './my-script.js';</code> 我收到此错误: <strong><code>Uncaught SyntaxError: Unexpected token {</code></strong>< /p> </p><p>在 Chrome 扩展中的 <strong><code>content.js</code></strong> 中使用此语法是否存在问题(因为在 HTML 中您必须使用 <code> <script type="module" src="script.js "></code> 语法),还是我做错了什么? Google 忽略对扩展的支持似乎很奇怪。</p></script> </code></p>
P粉141035089P粉141035089442 天前580

全部回复(2)我来回复

  • P粉739079318

    P粉7390793182023-08-28 14:20:34

    使用动态import()< /code> 函数。

    与使用