我似乎无法从 ES6 脚本文件实例化 Web Worker。 MDN 说应该可以这样:
const worker = new Worker('my-worker.js', {type:"module"});
这对我不起作用,我收到错误:
SyntaxError: import declarations may only appear at top level of a module
test.html
<html>
<head></head>
<body><script type="text/javascript">
new Worker("worker.js", { type: "module" });
</script></body>
</html>
worker.js
import Nothing from "./nothing.js";
火狐版本:62.0.2
目前(2021 年 4 月)还没有,请参阅此功能请求了解详细信息:
https://bugzilla.mozilla.org/show_bug.cgi?id=1247687
Firefox 于 2023 年 2 月解决了对
type: module
的支持:
https://bugzilla.mozilla.org/show_bug.cgi?id=1247687
根据 Caniuse 的说法,此支持已于 2023 年 6 月作为 Firefox v114 发布:
https://caniuse.com/mdn-api_worker_worker_ecmascript_modules