Как импортировать модуль машинописного текста в Web Worker в angular 8? - PullRequest
0 голосов
/ 16 июня 2019

Начиная с Angular 8, теперь вы можете создавать веб-работника для своего приложения из CLI. Я сделал так же, как официальный путеводитель:

https://angular.io/guide/web-worker

И это прекрасно работает.

Но как только я пытаюсь импортировать любой модуль в начало app.worker.ts с:

import { MyData } from '../shared/shared.module';

Тогда я получаю ошибки компиляции: enter image description here

Есть ли другой способ импортировать модули в веб-работников?

1 Ответ

0 голосов
/ 22 июня 2019

Моя проблема заключалась в том, что этот общий модуль, который я пытался импортировать, был создан с ng generate module. При этом angular автоматически импортирует NgModule, CommonModule и добавляет @NgModule с объявлениями и импортом в экспортируемый класс. Это дает вам доступ к DOM, а веб-работники не могут получить доступ к DOM. Вот о чем говорила ошибка компиляции. Даже если я не использовал этот импорт, и ни один из них не был причиной, по которой я импортировал этот модуль в веб-приложение. Они все равно были там и вызывали ошибку.

Я исправил это, просто удалив 2 оператора импорта для NgModule, CommonModule и всего @NgModule из моего общего модуля. Затем он импортировал нормально без каких-либо ошибок в веб-работника.

...