worker_threads 中的 tsconfig 路径

问题描述

我正在启动一些节点工作程序,并且需要每个工作程序从 tsconfig 的路径编译器选项中表示的路径中提取代码。您如何配置 worker 以确认来自 tsconfig 的路径?

这是我创建 Worker 的方法

const workerTs = (ordinalPosition: number,file: string,workerOptions: WorkerOptions): Worker =>
{
  workerOptions.eval = true;

  if (!workerOptions.workerData)
  {
    workerOptions.workerData = {};
  }

  workerOptions.workerData.__filename = file;
  workerOptions.workerData.blsSalaryArray = blsSalaryArray;
  workerOptions.workerData.dataToProcess = chunks[ ordinalPosition ];

  return new Worker(`
    const wk = require('worker_threads');
    require('ts-node').register();
    let file = wk.workerData.__filename;
    delete wk.workerData.__filename;
    require(file);`,workerOptions
  );
};

这是我收到的错误

{
  diagnosticText: "... Cannot find module '@datastop-io/datastop-io-libraries' or its corresponding type declarations.\r\n",diagnosticCodes: [ 2307 ]
}

这是我在 tsconfig.base.json 中的路径配置:

{
   "compilerOptions":
    {
       "paths":
       {
"@datastop-io/datastop-io-libraries":["libs/datastop-io-libraries/src/index.ts"]
       }
    }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)