我有一个用 Typescript 编写并使用 webpack5 捆绑的项目。我尝试使用网络工作者从最小线程中卸载一些代码。
主要.worker.ts:
import { expose } from 'comlink';
import {TimeConsumingFunction} from "./TimeConsumingFunction"
const exports = {
TimeConsumingFunction
};
export type WorkerInterfaceTimeConsumingFunction = typeof exports;
export default null as any;
expose(exports);
Run Code Online (Sandbox Code Playgroud)
主要.ts:
import { wrap } from 'comlink';
import {WorkerInterfaceTimeConsumingFunction, default as DataPixelsWorker} from './main.worker';
const worker = new Worker(new URL("./main.worker", import.meta.url));
const workerApi = wrap(worker);
let result = await workerApi.TimeConsumingFunction();
Run Code Online (Sandbox Code Playgroud)
ts配置:
{
"compilerOptions": {
"target": "es3",
"module": "esnext",
"lib": ["webworker", "es2018", "dom"],
"allowJs": true,
"checkJs": false, …Run Code Online (Sandbox Code Playgroud)