#angular #service-worker #progressive-web-apps
#angular #service-worker #progressive-веб-приложения
Вопрос:
Итак, я выполнил все шаги в этом руководстве Angular в их документации:
https://angular.io/guide/service-worker-getting-started#getting-started-with-service-workers
Когда я создаю проект Angular в первый раз, запускаю его в браузере Chrome инкогнито, в моих журналах говорится, что ngsw-worker.js
файл был успешно восстановлен (GET) с помощью http-server
.
Когда я удаляю service worker в инструментах разработки, открываю новую вкладку «инкогнито» (или закрываю браузер и открываю новое окно «инкогнито»), из ngsw-worker.js
не http-server
извлекается, следовательно, в браузере нет service worker.
Почему это? Это давало мне покоя целую вечность. Единственный способ получить новый service worker — это перестроить проект с помощью ng build --prod
. И даже тогда это может быть довольно непоследовательно.
Дополнительная информация:
- Я запускаю свой локальный сервер с
http-server -p 8080 -c-1 dist/<project-name>
- Версия Angular: 7.1.1
Ответ №1:
В некоторых версиях Angular 7 service worker работает некорректно.
Смотрите сообщение автора в этом выпуске GitHub о временном обходном пути