我能够成功从我的服务器获取推送通知并用此更新 react 组件
self.addEventListener('push', event => {
const data = event.data.json();
event.waitUntil(
self.registration.showNotification(data.title, {
body: data.body,
image: './Flowster-icon-32.png'
})
);
const channel = new BroadcastChannel('sw-messages');
channel.postMessage(data);
});
但是浏览器sucs IE,safari,不支持BroadcastChannel,甚至client.postMessage在这些浏览器中也不支持,我怎样才能让它在这些浏览器中工作。感谢您提前提供的帮助。
最佳答案
自 BroadcastChannel doesn't support IE and safari browser ,作为解决方法,我建议您可以尝试使用 sysend.js在 IE 或 safari 浏览器中。
引用:How can I use the BroadcastChannel API or something similar in Safari 10+?
关于reactjs - 在某些不支持 BroadcastChannel 的浏览器中,从 Service Worker 发送消息以响应组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59366355/