Typescript Postmessage 失败,只有一个参数,还有两个

GN.*_*GN. 5 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
Run Code Online (Sandbox Code Playgroud)

Typescript 在这里想要什么?是一两个论据吗?为什么这会导致问题?

小智 3

如果您使用的是MessageChannel的端口postMessage函数,那么您只需传递一个参数。

event.ports[0].postMessage(data)
Run Code Online (Sandbox Code Playgroud)

如果您使用window.postMessage,那么您必须传递2或3个参数。

window.postMessage(data, origin, [transfer])
Run Code Online (Sandbox Code Playgroud)