У меня большие трудности с использованием ServiceWorker с ionic 2. Я начинаю новый проект с ionic следующим образом:
$ Ionic start pwa-project blank --v2
Структура по умолчанию, созданная ionic me, состоит из двух важных папок: - src - www.
В обоих есть файлы: - Index.html (где я должен раскомментировать вызов сервисного работника) - Manifest.json (который устанавливает данные из моего приложения) - Service-worker.js (сам мой сервисный рабочий )
Логика для разработчиков в ionc заключается в том, чтобы ничего не трогать в папке www, а работать только в папке src. И я это сделал, запустил $ ionic serve
и начал редактировать свой html, сервис-воркер и манифест - все в папке src. Но я заметил, что изменения не отражаются на тех же файлах в папке www. Перезагрузил $ ionic serve
, и ничего не произошло.
Хорошо, затем я приступил к редактированию этих трех файлов прямо в папке www, чтобы активировать их у моего работника службы.
На этот раз я столкнулся с другой проблемой. Сервис-воркер не запускается. Сценарий вызывает сервис-воркера в файле index.html, выводит на консоль сообщение об успешном завершении «сервис-воркер установлен», подтверждающее, что он был установлен, но я написал несколько console.log()
в моем сервис-воркере событий. и эти события не срабатывают, и я не могу сказать почему.
console.log ( '[SERVICE WORKER] Install');
console.log ( '[SERVICE WORKER] Activate');
console.log ( '[SERVICE WORKER] Fetch');
Ничего из этого не отображается на консоли, поэтому я считаю, что сервис-воркер по какой-то причине не работает.
В Chrome DevTools на панели приложений отображается, что сервис-воркер установлен и включен.
Кто-нибудь сталкивался с этой проблемой? Удалось решить?
PS: Когда я создаю проект на ванильном javascript, все работает нормально, сервис-воркер установлен, работает и сообщения обычно отображаются на консоли, что заставляет меня думать, что есть какое-то вмешательство Ionic (v2).
Моя ионная информация:
Cordova CLI: 6.3.1
Gulp version: CLI version 3.9.1
Gulp local: Local version 3.9.1
Ionic CLI Version: 2.1.4
Ionic App Lib Version: 2.1.2
OS: Distributor ID: elementary OS Description: elementary OS Freya
Node Version: v5.12.0