Регистрация работника службы завершилась ошибкой: TypeError: Не удалось зарегистрировать ServiceWorker для области - PullRequest
0 голосов
/ 27 января 2020

У меня проблема с регистрацией работника сервиса в моем приложении angular. Все работало нормально, прежде чем я переключился со стандартного npm сценария запуска запуска:

"start": "ng serve --aot --port 4200",

на сценарий, используя спецификацию c конфигурация, где я просто заменяю свои активы, стили, скрипты и файлы среды.

"start": ng serve --aot --configuration = development --port 4200

Мой вопрос является, что является стандартной конфигурацией для ng serve, чтобы я мог настроить свою конфигурацию аналогичным образом? Или, если проблема лежит где-то еще, что я могу сделать, чтобы исправить это? Как я могу отключить работника службы в среде разработки? serviceWorker: false в angular json не работает. (Я все еще получаю ошибки)

1 Ответ

0 голосов
/ 27 января 2020

Похоже, я нашел способ исправить эту проблему. Проблема была в моем app.module.

Вместо записи:

imports: [
  ServiceWorkerModule.register('ngsw-worker.js', {
    enabled: environment.production,
  }),
]

Мне пришлось использовать следующее:

imports: [
  ServiceWorkerModule.register('ngsw-worker.js'),
],
providers: [
  {
    provide: SwRegistrationOptions,
    useFactory: () => ({ enabled: environment.production }),
  },
]

Я думаю, что эта проблема была связанные с динамическим изменением файлов среды во время обслуживания / сборки. Может ли кто-нибудь объяснить более подробно, почему это было проблемой?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...