【发布时间】:2016-11-12 21:03:50
【问题描述】:
我有一个 npm/webpack 设置,我的部分应用程序需要 Web Workers。通常,Web Worker 使用以下语法创建:
var worker = new Worker('path/to/external/js/file.js');
在 npm 中,这不起作用,因为我使用的开发环境不接受这样的路径。必须使用require() 包含文件。
我不能只链接到文件,因为这违反了跨域规则。
是否有包含这些工作文件的策略?
【问题讨论】:
-
您是否尝试在 Node 中运行您的网络工作者?
-
不,我正在为前端开发。也许这个问题更适合 webpack,但我无法要求将外部工作文件包含在包中。
-
new Worker()代码在客户端运行; Node 或 npm 想要什么并不重要,因为就服务器而言,代码只是内容。工作文件将从客户端通过一个普通的旧 HTTP 请求获取到您传递给new Worker()的 URL。 -
是的,问题出在我的开发环境中。我不能只从我正在使用的服务器设置中获取文件,也不能从其他地方链接绝对路径,因为 CORS。
标签: javascript node.js npm webpack web-worker