我希望我的组件能够监听工作线程上的自定义事件。
有没有办法与带有 stenciljs 的网络工作者一起处理自定义事件?
在 Web Components中实现Web Workers是可能的,就像不用时一样。
我的网络组件.js
...
connectedCallback() {
const worker = new Worker('doWork.js');
worker.addEventListener('message', function(e) {
console.log(e.data);
}, false);
}
...
doWork.js
self.addEventListener('message', function(e) {
var data = e.data;
switch (data.cmd) {
case 'average':
var result = calculateAverage(data); // Some function that calculates the average from the numeric array.
self.postMessage(result);
break;
default:
self.postMessage('Unknown command');
}
}, false);