Ich habe alles so gemacht, wie es in " https://angular.io/guide/service-worker-getting-started " geschrieben ist, um meine Anwendung PWA zu erstellen.
Genau diese Befehle verwendet:
ng add @angular/pwa
npm install http-server -g
ng build --prod
http-server -p 8080 -c-1 dist
Dann öffnete ich diese URL auf Chrome (in inkognito)
Wenn ich Tools für Entwickler öffne (F12)> Anwendungen> Service Workers, steht kein Service Worker zur Verfügung und die Website funktioniert nicht, wenn ich sie offline setze.
Zusätzliche Informationen zu meiner Winkel-App:
package.json: (die wichtigsten)
"@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",
Es scheint, dass das Service Worker-Setup für das @ angle/cli @ 7.1.4 defekt ist:
Als temporäre Lösung können Sie sie manuell registrieren, indem Sie die Datei src/main.ts ändern.
.....
platformBrowserDynamic().bootstrapModule(AppModule).then(() => {
if ('serviceWorker' in navigator && environment.production) {
navigator.serviceWorker.register('/ngsw-worker.js');
}
}).catch(err => console.log(err));
PS: Github-Problem erstellt: https://github.com/angular/angular-cli/issues/13351
Ich denke, Sie haben die Schritte und Anweisungen zum Installieren der erforderlichen Bibliotheken aus der Dokumentation befolgt. Simulieren eines Netzwerkproblems : Tools> Developer Tools> Network (Registerkarte)> Aktivieren Sie das Kontrollkästchen Offline. Jetzt hat die App keinen Zugriff auf die Netzwerkinteraktion. Wenn Sie sich die Registerkarte Network ansehen, können Sie überprüfen, ob der Servicemitarbeiter aktiv ist.