веб-работники с stenciljs для пользовательских событий - PullRequest
0 голосов
/ 28 сентября 2018

Я хочу, чтобы мои компоненты прослушивали пользовательские события в рабочем потоке.

Есть ли способ работы с веб-работниками с помощью stenciljs для обработки пользовательских событий?

1 Ответ

0 голосов
/ 26 апреля 2019

Возможно реализовать Web Workers в веб-компонентах, точно так же, как без них.

my-web-component.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);
...