无法在“ Worker”上执行“ postMessage”:无法克隆FormData对象

时间:2018-10-05 11:32:47

标签: javascript web-worker form-data

我正在使用Web Worker通过使用slice创建块来上传较大的文件,但是当我以formData对象的形式发送文件时,它会抛出此错误。当我在reactjs中这样做时,它会抛出以下错误

react-dom.development.js:518警告:React无法识别DOM元素上的when matched then update set 1=1 where -- condition delete where --condition 道具。如果您有意让它作为自定义属性出现在DOM中,请将其拼写为小写offClick。如果您不小心从父组件传递了它,请将其从DOM元素中删除。

这是我的代码,我在其中使用postMessage将formData对象传递给工作人员,请帮助我解决此问题

offclick

1 个答案:

答案 0 :(得分:0)

您没有正确使用worker API。您应该看看这个https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers

您的工作程序文件应如下所示:

self.onmessage = function(e) {

  // Do all the work here the postMessage the result
  self.postMessage(result)
}

您的“主”文件很好:)

const worker = new Worker('yourWorkerFilePath')

worker.onmessage() = function(resultFormWorker) {
  // treate the result here
}

worker.postMessage(file)