Работник службы не зарегистрирован или не контролирует начальный URL - PullRequest
0 голосов
/ 08 апреля 2019

Вкладка Chrome Manifest:

enter image description here

Я не вижу ни одного работника сервиса, вкладка Chrome Service Worker:

enter image description here

Вот мой манифест.json:

{
    "short_name": "shortname",
    "name": "Full Name",
    "icons": [
      {
        "src": "img/logo.svg",
        "type": "image/svg",
        "sizes": "512x512"
      }
    ],
    "start_url": "/",
    "background_color": "#cc2366",
    "display": "standalone",
    "scope": "/",
    "theme_color": "#cc2366"
}

app.module.ts

...
import { ServiceWorkerModule } from '@angular/service-worker';
import { AppComponent } from './app.component';
import { environment } from '../environments/environment';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    ...
    environment.production ? ServiceWorkerModule.register('/ngsw-worker.js') : [],
    ...
  ],
  providers: [
  ],
  bootstrap: [
    AppComponent
  ]
})
export class AppModule {
}

.angular-cli.json

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "project": {
    ...
  },
  "apps": [
    {
      ...
      "serviceWorker": true,
      ...
    }
  ],
  "e2e": {
    ...
  },
  "lint": [
    ...
  ],
  "test": {
    ...
  },
  "defaults": {
    ...
  }
}

Однако я могу получить доступ к https://myrooturl/ngsw-worker.js через браузер.

Чего мне не хватает?

(диск: некоторые несоответствующие коды показаны пунктирными)

1 Ответ

0 голосов
/ 19 апреля 2019

Ваш синтаксис неверен.Так должно быть.

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