var worker = new Worker('./src/parser.js');
worker.onmessage = function(e) {
console.log(e);
console.log(e.data.getCollection()); // .. is not a function
};
工作人员:
onmessage = function(e) {
var myModel = new Model();
myModel.readFile(e.data.files[0], function (data) {
console.log(myModel.getCollection()); // Returns array
postMessage(myModel);
});
};
返回实例化对象,但仅返回构造函数中的值。不是任何原型函数。
为什么?是否可以从 Web worker 返回实例化对象?
我猜所有传递给 Web worker 和从 Web worker 传递的数据都是序列化的(JSON 解析/字符串化)。对象上的 func 定义将在序列化期间被删除。
您可以返回查询的数组而不是返回模型吗?
https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers