Angular 7 - сервисный работник не зарегистрирован - PullRequest
0 голосов
/ 16 ноября 2018

Я сделал все, как написано в "https://angular.io/guide/service-worker-getting-started", чтобы сделать мое приложение PWA.

Использовал именно эти команды:

ng add @angular/pwa

npm install http-server -g

ng build --prod

http-server -p 8080 -c-1 dist

Затем я открыл этот URL в Chrome (in incognito)

http://127.0.0.1:8080

Когда я открываю инструменты для разработчиков (f12)> Приложения> Сервисные работники, сервисный работник недоступен, и веб-сайт не работает, когда я отключаюсь от сети.

Дополнительная информация о моем угловом приложении:

package.json: (самые важные)

"@angular/core": "^7.0.2",
"@angular/pwa": "^0.10.6",
"@angular/service-worker": "^7.0.4",
"@angular-devkit/build-angular": "^0.10.6",
"@angular/cli": "^7.0.6",

1 Ответ

0 голосов
/ 03 января 2019

Похоже, что установка для работника сервиса не работает для @ angular / cli @ 7.1.4:

В качестве временного решения вы можете зарегистрировать его вручную, изменив файл src / main.ts. (После исправления вы можете удалить регистрацию работника ручного сервиса.):

.....

platformBrowserDynamic().bootstrapModule(AppModule).then(() => {
  if ('serviceWorker' in navigator && environment.production) {
    navigator.serviceWorker.register('/ngsw-worker.js');
  }
}).catch(err => console.log(err));

PS: проблема Github создана: https://github.com/angular/angular-cli/issues/13351

PS: проблема Github №2 создана: https://github.com/angular/angular-cli/issues/15025

...