Проблема в том, что если я открываю инкогнито окно chrome, updateLocalId () не запускается. Так что я думаю, что я не получаю события от sw.
Но если я перезагружаю страницу, все работает нормально.
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/service-worker.js')
.then((registration) => {
console.info('[main] ServiceWorker registration successful: ', registration, ' ', '?');
}, (err) => {
console.error('[main] ServiceWorker registration failed: ?', err);
});
navigator.serviceWorker.addEventListener('message', async function (event) {
self.updateLocalId(event.data);
});
}
С ПО отправляю сообщение следующим образом:
function send_message_to_all_clients(msg) {
self.clients.matchAll().then(clients => {
clients.map(client => client.postMessage(msg))
});
}