【发布时间】:2020-10-23 06:39:07
【问题描述】:
我的 Angular 应用程序中已经有 Worker。但我正在尝试创建一个 Shared Worker,但它失败了,说“无法获取工作脚本”。在控制台中。
const worker = new SharedWorker('../../../workers/my.shared.worker', { name: 'mySharedWorker', type: 'module' });
如果我用 Worker 替换 SharedWorker - 它会完美运行。
当然,我根据需要制作了一切。创建了一个额外的.tsconfig 文件:
/// tsconfig.worker.json
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "./out-tsc/worker",
"lib": [
"es2018",
"webworker"
]
},
"include": [
"src/workers/*.worker.ts"
]
}
并将webWorkerTsConfig 添加到angular.json 配置:
projects.myProject.architect.build.options.webWorkerTsConfig: "tsconfig.worker.json"
我找到了this article by Nikita Barsukov,但它只有在您的 Worker 作为单个文件存储在 assets 文件夹中时才有效。但是我的 SharedWorker 包含十几个 .ts 文件,应该像普通 Worker 一样打包。
【问题讨论】:
标签: angular webpack angular-cli shared-worker