微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否可以在使用 Web Worker 的 nx 工作区中创建 Angular 库?

如何解决是否可以在使用 Web Worker 的 nx 工作区中创建 Angular 库?

我想在我的 nx 工作区中创建一个在内部使用网络工作者的 Angular 库。

例如Angular 库包含

  • 一个名为 FibonacciModule 的 Angular 模块
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FibonacciService } from './fibonacci.service';

@NgModule({
  imports: [CommonModule],providers: [FibonacciService],})
export class FibonacciModule {}

  • 名为 FibonacciService 的 Angular 服务
import { Injectable } from '@angular/core';

@Injectable({
  providedIn: 'root',})
export class FibonacciService {
  private worker: Worker;

  constructor() {
    this.worker = new Worker('./lib.worker',{ type: 'module' });
    this.worker.onmessage = () => {
      // ...
    };
  }
  calculate(num: number) {
    this.worker.postMessage(num);
    // ...
  }
}

如果我通过 Angular 原理图创建一个新的 web worker,angular.json 会更新为一个属性 "webWorkerTsConfig": "apps/my-app/tsconfig.worker.json"

但是如果我将此属性添加到角度库中,则会出现错误。 是否可以在 NX 工作区中使用带有 Angular 库的 Web Worker?在我看来,将 Web Worker 封装在库中是有意义的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。