将自定义对象传递给webworker会导致丢失原型信息

时间:2013-05-20 15:09:38

标签: javascript three.js web-worker

我尝试将三个网格中的数据导出到webworker中的字符串。丢失原型信息我遇到了麻烦。 (这不是three.js的问题,而是web工作者。通常我会尝试将对象发送给webworker并在导入的脚本中使用它)

这是我的网络工作者代码:

importScripts('../editor/three.js', '../exporter.js');

onmessage = function(event) {
  postMessage(event.data);
  export(event.data);
 };

在event.data中是具有面和顶点的对象。 PostMessage发送正确的信息。例如 - 法线向量知道clone()函数。

问题是,当我尝试访问export()函数中的数据时。然后值是正确的,但我放弃了所有原型信息。因此,法向量具有属性x,y,z,但不知道clone()函数。

exporter.js中声明的Export()函数和three.js对象的定义在three.js中。

有什么想法吗?

感谢。

1 个答案:

答案 0 :(得分:0)

愚蠢的问题 - “网络工作者的规范不允许传递任何字符串。”