使用 Angular 和 Web Worker 时从作用域克隆元素时出错

Error cloning element from scope while using Angular and Web Workers

我有一个 Angular 应用程序,我正在尝试在 Web Worker 中实现一些功能。为此,我需要将对象从 angular 范围传递给工作人员,以便对其进行处理并生成结果。

我运行进入如下错误:

Error: Failed to execute 'postMessage' on 'Worker': An object could not be cloned.

调用时worker.postMessage($scope.scopeObj);

为了将该对象发送给工作人员,我必须做些什么特别的事情吗?它目前适用于手动创建的模拟对象。

原来我试图发送的对象调用了一个内部函数,正如本文档 (https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm#Things_that_don%27t_work_with_structured_clones) 所指出的,这是消息不支持的内容之一。

从对象 send 中删除函数修复了错误。