typescript webworker onmessage处理程序错误

typescript webworker onmessage处理程序错误,typescript,web-worker,Typescript,Web Worker,我无法让typescript编译下面的简单代码段。 即使我将参数ev设置为MessageEvent类型 我尝试过typescript 2.8.3和2.9.0 错误消息 错误:(262,22)TS2345:类型为“(ev:any)=>void”的参数不能分配给类型为“MessageEvent”的参数。 类型“(ev:any)=>void”中缺少属性“data” 代码snipet const worker = new Worker('./worker/render-worker.ts'); work

我无法让typescript编译下面的简单代码段。 即使我将参数ev设置为MessageEvent类型

我尝试过typescript 2.8.3和2.9.0

错误消息

错误:(262,22)TS2345:类型为“(ev:any)=>void”的参数不能分配给类型为“MessageEvent”的参数。 类型“(ev:any)=>void”中缺少属性“data”

代码snipet

const worker = new Worker('./worker/render-worker.ts');
worker.onmessage((ev) => {
  console.log(ev.data);
});
tsconfig.json

{
  "compileOnSave": false,
  "compilerOptions": {
    "sourceMap": true,
    "inlineSourceMap": false,
    "inlineSources": false,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es6",
    "lib": [
      "es2017",
      "scripthost",
      "webworker",
      "dom"
    ]
  }
}
替换此项:

worker.onmessage((ev) => {
  console.log(ev.data);
});
为此:

worker.onmessage = (ev) => {
  console.log(ev.data);
};
替换此项:

worker.onmessage((ev) => {
  console.log(ev.data);
});
为此:

worker.onmessage = (ev) => {
  console.log(ev.data);
};

啊!除了那个,我尝试了所有的排列。这就成功了。非常感谢。啊!除了那个,我尝试了所有的排列。这就成功了。非常感谢。