Имея приложение preact, сгенерированное preact-cli (использует workbox), моя цель - зарегистрировать обработчик событий 'message' на сервисном работнике, опубликовать сообщение из приложения и, наконец, получить ответ обратно.
Что-то вроде:
/* app.js */
navigator.serviceWorker.postMessage('marco');
const response = ? // get the response somehow
/* sw.js */
addEventListener('message', function (e) { return 'polo' });
У меня нет большого опыта работы с сервисными работниками, и есть много движущихся частей, которые меня смущают, как, например, рабочий бокс делает магию c на сервисном работнике, preact скрывает код, который регистрирует работника службы и обслуживающего персонала, который сложно отладить в целом.
Пока что я поместил файл sw.js
в каталог src/
в соответствии с инструкциями preact-cli документы здесь: https://preactjs.com/cli/service-worker/
Я знаю, что должен подключить прослушиватель событий, но не могу найти документацию, для какого объекта это сделать.