Web Workers文件可以处理包含还是模块?

时间:2015-11-16 08:45:48

标签: javascript module web-worker

我有几个web worker,每个都支持数据库中的不同表。 web worker中的每一个都使用一组核心功能(用于访问服务器,查询等)。

将这些共享的常见功能放入多个web worker中的最佳方法是什么?

似乎如果将它们作为文件加载,那么浏览器将缓存它们并且工作者本身可以更轻。

也许可以将其加载为es6 modules

2 个答案:

答案 0 :(得分:1)

Web worker接收一个全局函数importScriptsspec | MDN),您可以使用它将脚本导入到worker的全局上下文中:

importScripts('shared.js');

有一天,我确信我们将能够使用ES2015(ES6)模块,但那一天可能至少需要一两年的时间。 : - )

答案 1 :(得分:1)

另请注意,RequireJS适用于网络工作人员,因此如果您将其用于自己的应用,则可以轻松解决相关问题。