我已经将我的项目从 Angular 11 更新到了 Angular 12,并且除了我的 webworkers 之外的所有东西都可以正常工作。当我进行构建时,worker.ts 文件不会复制到输出目录,并且在 ng serve 中加载时,我得到 404 的工作文件。
在“build”下的angular.json中,我有这个:
"webWorkerTsConfig": "tsconfig.worker.json"
我的 tsconfig.worker.json 包含这个:
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "./out-tsc/worker",
"lib": [
"es2018",
"webworker"
],
"types": []
},
"include": [
"src/**/*.worker.ts"
]
}
我没有在这里更改任何内容....我如何才能追踪为什么它不包含 worker.ts 文件?
答案 0 :(得分:0)
好的,我发现了问题: 我曾经像这样创建工人(它适用于 angular 11):
new Worker('/src/app/shared/workers/get-all-files.worker.ts',
{ name: 'getEntityMetricsLeg', type: 'module' })
在我改成下面的之后,一切又恢复了:
new Worker(new URL('/src/app/shared/workers/get-all-files.worker.ts', import.meta.url),
{ name: 'getEntityMetricsLeg', type: 'module' })