【发布时间】:2020-06-07 16:28:37
【问题描述】:
我有一个渲染工作者,我想将回调传递给它。我知道 worker.postMessage 方法现在支持 Javascript 对象,但是当我尝试使用对象传递函数时,我收到一个错误,告诉我它“无法克隆”对象。
我还在对象上尝试了 JSON.stringify(),并了解到函数不会被字符串化,因为 JSON 不支持函数范围。
有没有办法将回调传递给 Web Worker?如果不是,您建议如何解决这个限制?
我的问题是我在开始动画的同时向工作人员发送了一条消息以开始渲染。所以我需要等到两者都完成后再执行“回调”
【问题讨论】:
-
你能显示一些代码吗? minimal reproducible example 会很好
-
我不确定你想看什么代码?我只需要知道是否有任何方法可以将函数传递给网络工作者。由于作用域,JSON 字符串不起作用,传递对象文字会引发异常。您到底在寻找什么代码?
标签: javascript web-worker