2013-01-01 82 views
6

我打算在我的Node.js应用程序中使用web worker来执行一些并发任务。然而,由于'webworker-threads'模块遵循HTML5 web worker的实现,所以在web worker内部需要Node_s模块require("fs")不起作用。 importScripts()可以加载js文件,但我想要一个web worker的功能,这样我就可以require npm安装的模块。有没有解决方法?将Nodejs模块加载到Web Worker中

回答

7

webworker-threads的作者在这里。感谢您使用该模块!

有一个默认native_fs_对象,您可以使用readFileSync来读取文件。

除此之外,我主要依靠onejs将package.json中的所有必需模块编译为单个JS文件,供importScripts使用,就像部署到客户端Web工作环境时所使用的那样。 (还有很多onejs的替代品 - browserify等)

希望这有助于!

+0

谢谢。它有很大帮助! – JJin

+0

__ @ audreyt__你可以用这种方式导入依赖于其他模块的模块,只要它们在'package.json'中提到过。 – Redsandro

+0

是否可以加载使用本地资源的节点模块,如'v4l2camera'? – yombo