У меня возникли проблемы с правильной компиляцией моего typescript, когда я пытаюсь использовать веб-работников.
У меня есть рабочий, определенный следующим образом:
onmessage = (event:MessageEvent) => {
var files:FileList = event.data;
for (var i = 0; i < files.length; i++) {
postMessage(files[i]);
}
};
В другой части моего приложения я использую загрузчик рабочего стола webpack для загрузки моего рабочего следующим образом: let Worker = require('worker!../../../workers/uploader/main');
У меня, однако, есть некоторые проблемы с тем, что объявления typescript не кричат на меня, когда приложение должно быть переписано. Согласно моим исследованиям, я должен добавить еще один стандартный lib в мой файл tsconfig, чтобы выявить глобальные переменные, к которым рабочий должен получить доступ. Они я так сказал:
{
"compilerOptions": {
"lib": [
"webworker",
"es6",
"dom"
]
}
}
Теперь, когда я запускаю webpack, чтобы построить все, я получаю кучу таких ошибок: C:/Users/hanse/Documents/Frontend/node_modules/typescript/lib/lib.webworker.d.ts:1195:13
Subsequent variable declarations must have the same type. Variable 'navigator' must be of type 'Navigator', but here has type 'WorkerNavigator'.
Итак, мой вопрос: как я могу указать, что webworker использует определения lib.webworker.d.ts, а все остальное следует за нормальными определениями?