TypeScript Postmessage терпит неудачу с одним аргументом и двумя

Oct 18 2020

Есть проект Typescript.

Когда это: postMessage(result);

Я понял ..

Expected 2-3 arguments, but got 1.Ожидается 2-3 аргумента, но получил 1.

Когда это: postMessage(result, '*');

Я понял ..

Uncaught TypeError: Failed to execute 'postMessage' on 'DedicatedWorkerGlobalScope': Overload resolution failed.
    at runParser

Что здесь нужно Typescript? Это один или два аргумента? И почему это вызывает проблемы?

Ответы

JoanPM Feb 06 2021 at 03:30

Если вы используете функцию postMessage порта MessageChannel, вам нужно передать только один параметр.

event.ports[0].postMessage(data)

Если вы используете window.postMessage, вам нужно передать 2 или 3 параметра.

window.postMessage(data, origin, [transfer])