推送事件后,我需要将消息从serviceWorker发送到页面.
我无法指定端口属性(例如https://jakearchibald.github.io/isserviceworkerready/demos/postMessage/),因为我没有发送此消息
该代码不起作用(也许我做错了)
self.registration.active.postMessage('fsdfasf');
解决方法:
在specs之后,似乎正确的实现是从Service Worker中选择一个Client,然后使用postMessage方法,例如:
onmessage = function(event){
clients.matchAll().then(function(clients){
clients[0].postMesssage('yourmessage');
});
}